我的目标是使用echo命令创建一个文件,然后将其传输到远程服务器,但我的echo命令无效。
这是我的echo命令代码:
import os
os.system("echo 'listen {0} '\n' Documentroot '{1}/{2}' '\n' <Directory '{1}'> \n Required all granted' '\n' </Directory>' > /root/Desktop/{3}".format(user_port , user_directory , user_folder , file_name))
答案 0 :(得分:0)
系统范围的回显通常需要选项-e
来解释反斜杠序列:/bin/echo -e "hello\nworld"
。
使用echo
在shell中尝试此操作可能不使用选项-e
,但只调用shell-builtin,而python脚本将调用系统范围的echo。两者都有不同的选择和行为。
答案 1 :(得分:0)
为什么不用Python打印,然后将其管道到需要的位置?
脚本
print("""listen {0}
Documentroot '{1}/{2}'
...
""".format(...))
命令
python script.py > /root/Desktop/output