如何使用 Linux Shell 脚本和 Python 脚本插入空行?
How to insert blank line using Linux Shell Script together with Python Script?
我目前正在将 Python 脚本输出重定向到 Linux
中的日志文件 (log)
Python 脚本示例 (example.py):
print("output")
Shell 脚本:
python3 example.py >> log
当我在 运行 example.py 几次后检查日志内容 (cat log
) 时,我得到:
output
output
output
所以,我想在下一个“输出”条目之前添加一个空行。想要的位置是:
output
output
output
我应该如何在 Shell 脚本中以不同的方式实现这一点(不是编辑 example.py)?
谢谢
更新:
example.py:
print("output1")
print("output2")
第一次运行时python3 example.py | sed 's/$/\n/' >> log
,我得到:
output1
output2
第二次运行时:
output1
output2
output1
output2
我需要达到:
output1
output2
output1
output2
您可以在脚本完成执行后添加一个 echo
以添加尾随换行符:
(python3 example.py; echo) >> log
一个可能的解决方案是:
python3 example.py >> log && echo >> log
这将附加来自 python 脚本的输出和 在 之后附加一个额外的空行。
如果要在 python 脚本的每个输出前 添加额外的空行 :
echo >> log && python3 example.py >> log
这将附加一个空行,然后是 python 脚本的输出。
我目前正在将 Python 脚本输出重定向到 Linux
中的日志文件 (log)Python 脚本示例 (example.py):
print("output")
Shell 脚本:
python3 example.py >> log
当我在 运行 example.py 几次后检查日志内容 (cat log
) 时,我得到:
output
output
output
所以,我想在下一个“输出”条目之前添加一个空行。想要的位置是:
output
output
output
我应该如何在 Shell 脚本中以不同的方式实现这一点(不是编辑 example.py)?
谢谢
更新:
example.py:
print("output1")
print("output2")
第一次运行时python3 example.py | sed 's/$/\n/' >> log
,我得到:
output1
output2
第二次运行时:
output1
output2
output1
output2
我需要达到:
output1
output2
output1
output2
您可以在脚本完成执行后添加一个 echo
以添加尾随换行符:
(python3 example.py; echo) >> log
一个可能的解决方案是:
python3 example.py >> log && echo >> log
这将附加来自 python 脚本的输出和 在 之后附加一个额外的空行。
如果要在 python 脚本的每个输出前 添加额外的空行 :
echo >> log && python3 example.py >> log
这将附加一个空行,然后是 python 脚本的输出。