Bash脚本 - 如何自动执行nano命令?

时间:2015-11-18 16:38:51

标签: bash nano

如何在不使用nano命令的情况下编辑保存在远程服务器上的文件(从终端)?

这里是要注入的代码

import sys
sys.path.append('/opt/lib/python2.5/site-packages')

我试图解决这个写不使用nano命令使用wget + cat到文件位置的问题,它似乎有效。

wget https://REMOTE_SERVER_URL/HTTPRequest.py
cat HTTPRequest.py > /opt/share/pyload/module/network/HTTPRequest.py

但是在脚本正确保存“pyload”

之后,这里有一些错误
wget https://REMOTE_SERVER_URL/pyload
cat pyload > /etc/init.d/pyload
chmod 755 /etc/init.d/pyload

然后说

update-rc.d: warning: /etc/init.d/pyload missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
 Adding system startup for /etc/init.d/pyload ...
   /etc/rc0.d/K20pyload -> ../init.d/pyload
   /etc/rc1.d/K20pyload -> ../init.d/pyload
   /etc/rc6.d/K20pyload -> ../init.d/pyload
   /etc/rc2.d/S20pyload -> ../init.d/pyload
   /etc/rc3.d/S20pyload -> ../init.d/pyload
   /etc/rc4.d/S20pyload -> ../init.d/pyload
   /etc/rc5.d/S20pyload -> ../init.d/pyload

EDIT23NOV:清除代码

1 个答案:

答案 0 :(得分:2)

不要使用nano,您可以使用sed,可能类似

sed -i '/import pycurl/i \
import sys \
sys.path.append("/opt/lib/python2.5/site-packages")' opt/share/pyload/module/network/HTTPRequest.py

我没有测试过,所以也许你应该逃避附加内的斜杠。

首先,备份文件,因为-i修饰符会覆盖您的文件