Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Linux Shell脚本和Python脚本插入空行?_Python_Linux_Shell_Io - Fatal编程技术网

如何使用Linux Shell脚本和Python脚本插入空行?

如何使用Linux Shell脚本和Python脚本插入空行?,python,linux,shell,io,Python,Linux,Shell,Io,我目前正在将Python脚本输出重定向到Linux中的日志文件(Log) Python脚本示例(Example.py): Shell脚本: python3 example.py >> log 在运行example.py几次后检查日志内容(cat log)时,我得到: output output output 因此,我想在下一个“output”条目之前添加一个空行。通缉职位为: output output output 为了达到这个目的,我应该在Shell脚本中做些什么(而不

我目前正在将Python脚本输出重定向到Linux中的日志文件(Log)

Python脚本示例(Example.py):

Shell脚本:

python3 example.py >> log
在运行example.py几次后检查日志内容(
cat log
)时,我得到:

output
output
output
因此,我想在下一个“output”条目之前添加一个空行。通缉职位为:

output

output

output
为了达到这个目的,我应该在Shell脚本中做些什么(而不是编辑example.py)

谢谢


更新:

example.py:

print("output")
print("output1")
print("output2")
第一次运行python3 example.py | sed的/$/\n/'>>日志时,我得到:

output1

output2
第二次运行时:

output1

output2

output1

output2
我需要实现:

output1
output2

output1
output2

您可以在脚本完成执行后添加一个
echo
,以添加尾随换行符:

(python3 example.py;echo)>>日志

您可以在脚本执行完毕后添加一个
回显来添加尾随换行符:

(python3 example.py;echo)>>日志

一种可能的解决方案是:

python3 example.py >> log && echo >> log
这将在附加额外空行的之后附加python脚本和的输出

如果要在python脚本的每个输出之前附加一个额外的空行

echo >> log && python3 example.py >> log

这将附加一个空行,然后是python脚本的输出。

一种可能的解决方案是:

python3 example.py >> log && echo >> log
这将在附加额外空行的
之后附加python脚本和的输出

如果要在python脚本的每个输出之前附加一个额外的空行

echo >> log && python3 example.py >> log

这将附加一个空行,然后是python脚本的输出。

谢谢您的回答。我运行了您的建议('python3 example.py | sed's/$/\n/'>>log'),但是,我的原始文件在日志文件中打印了不止一行。我可以注意到“sed”语句在我的每个打印结果后添加了一个空行。是否有办法在所有打印结果结束后添加一个空行?为了说明这一点,我更新了我原来的问题。Thanks@Nunes我已经编辑了我的答案,所以它现在应该可以工作了。你可以使用
{}
来避免产生子shell。谢谢你的回答。我运行了您的建议('python3 example.py | sed's/$/\n/'>>log'),但是,我的原始文件在日志文件中打印了不止一行。我可以注意到“sed”语句在我的每个打印结果后添加了一个空行。是否有办法在所有打印结果结束后添加一个空行?为了说明这一点,我更新了我原来的问题。Thanks@Nunes我已经编辑了我的答案,所以现在应该可以使用了。您可以使用
{}
来避免生成子shell。