试用echo将字符串输出到文件很容易:

echo  'xxxxxx' >>  'test'

或者

echo  xxxxx >> 'test'

即可

但是将shell脚本输出到文件时,由于包含“#!/bin/bash”,会自动执行,所以如果写成:

echo "#/bin/bash  pwd">> 'test'

不会将字符串写入test文件,而会自动执行该脚本。
办法是,写成如下样式:

echo -e '#!/bin/bash\npwd' >> test.sh

同理,使用python的paramiko模块时,按通常办法也无法将shell脚本写入,应该按如下方式:

scr_str = '#!/bin/bash\npwd'
stdin,stdout,stderr = ssh.exec_command("echo -e '" + scr_str + "' >>/home/" + sysuser + "/test.sh")

参考:
https://blog.csdn.net/weixin_30562541/article/details/113709438

Logo

更多推荐