| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | 
export LANG=zh_CN.utf8export LC_ALL=zh_CN.utf8#改变工作目录到当前脚本所在路径if [[ "$0" =~ / ]]; then cd "${0%/*}"; fimkdir -p "/opt/matrix/logs"if [[ "$#" == "0" ]]; thenecho "usage:#执行本地命令ro action=local  cmds=<命令>#执行远程命令ro action=remote host=<IP或可解析的hostname> username=<用户> password=<密码> cmds=<命令>#从远程下载文件ro action=fget   host=<IP或可解析的hostname> username=<用户> password=<密码> local=<本地文件路径> remote=<远程文件路径>#上传文件到远程ro action=fput   host=<IP或可解析的hostname> username=<用户> password=<密码> local=<本地文件路径> remote=<远程文件路径>#Base64编码ro b64注意事项:命令:命令尽量使用单引号包括密码:需要BASE64编码,如果使用明文密码,那么需要在密码前增加一个等于号并使用单引号包括,例如:  ro action=remote host=127.0.0.1 username=root password='=123456' cmds='pwd;ls'Base64编码可以通过执行 ro b64 命令,输入明文,转换后得到"export ret=1elif [[ "$1" = "b64" ]]; thenecho -n 输入:python -c "import base64;import sys;s = sys.stdin.readline().strip()try:	if s[0] == '=':		print(s[1:])	else:		if sys.version_info.major == 3:			s = bytes(s, encoding='utf8')		s = base64.b64encode(s)		if sys.version_info.major == 3:			s = str(s, encoding='utf8')		print(s)except TypeError as e:	#print(e)	print(s)"export ret=$?elsepython ro.py TRACE=SIPR logdir="/opt/matrix/logs" "$@"export ret=$?fiexit $ret#见见之时 见非是见 见犹离见 见不能及
 |