1

如何不使用 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:清除代码

4

1 回答 1

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修改器会覆盖您的文件

于 2015-11-18T17:07:04.727 回答