Python:回显到文件(比如Bash)

2024-09-30 20:27:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我在这里有一个简单的bash命令,用于我正在用Python编写的脚本,我做了很多搜索,但没有找到一个简单的答案。我试图将打印的输出回送到一个文件中,确保没有换行符,并且可以向其中传递一个变量。下面是一个小片段(有很多这样的行):

echo "    ServerName  www.${hostName}" >> $prjFile

现在我知道它最终会看起来像:

^{pr2}$

对吧?但那不管用。请注意,这是在Python2.6中实现的(因为运行此脚本的机器使用的是该版本,并且还有其他依赖于该版本的依赖项)。在


Tags: 文件答案命令echo版本脚本bash机器
2条回答

您可以尝试一个简单的方法:

myFile = open('/tmp/result.file', 'w') # or 'a' to add text instead of truncate
myFile.write('whatever')
myFile.close()

在您的情况下:

^{pr2}$

语法是

print >>myfile, "ServerName www.", hostName,

其中myfile是以"a"(用于“append”)模式打开的文件对象。在

后面的逗号可防止换行。在

您可能还希望使用sys.stdout.softspace = False来防止Python在逗号分隔参数之间添加空格到print,和/或将内容打印为单个字符串:

^{pr2}$

相关问题 更多 >