Ben*_*lan 11 ssh bash shell aix sudo
我有以下内容
#!/bin/bash
USER='scott'
PASS='tiger'
ssh -t $USER@server006.web.com "sudo su - http"
Run Code Online (Sandbox Code Playgroud)
这是Works,但我试图让它在之后运行一个脚本,如果我这样做,使用-c或<
该脚本像这样做一个grep:
grep -i "Exception:" /opt/local/server/logs/exceptions.log | grep -e "|*-*-*:*:*,*|" | tail -1 | awk -F'|' '{print $2}' >> log.log
Run Code Online (Sandbox Code Playgroud)
这也适用于它自己,但我需要http才能做到这一点.
我也不能把SCP的输出输回到server001,所以我被困在这里,
任何想法都会被接受赞赏.本
小智 7
尝试
ssh -t $USER@server006.web.com 'sudo -u http grep -i "Exception:" /opt/local/server/logs/exceptions.log | grep -e "|*-*-*:*:*,*|" | tail -1 | awk -F"|" "{print $2}" >> log.log'
Run Code Online (Sandbox Code Playgroud)
Sudo已经以不同的用户身份运行命令,因此无需再次使用su.
只做sudo su的理由是有一个快速的方法来启动另一个用户的新shell.
你可能想要sudo -u而不是sudo su -:
ssh -t $USER@server006.web.com sudo -u http script
Run Code Online (Sandbox Code Playgroud)