Linux sudo,su,-c,“$pw”-一起使用它们

Linux sudo,su,-c,“$pw”-一起使用它们,linux,sudo,su,Linux,Sudo,Su,我需要同时在su和sudo下运行一个命令,并重定向输出 要手动执行此操作,我使用的命令是: sudo su - user1 然后从提示符处运行所需的命令 我已经制定了将所需命令导入su的语法: su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt …但我也不知道怎么把sudo弄进去 我希望我能键入如下内容: sudo su - user1 -c "more .ssh/authorized_keys" > sc

我需要同时在su和sudo下运行一个命令,并重定向输出

要手动执行此操作,我使用的命令是:

sudo su - user1
然后从提示符处运行所需的命令

我已经制定了将所需命令导入su的语法:

su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt
…但我也不知道怎么把sudo弄进去

我希望我能键入如下内容:

sudo su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt
echo "$pw" | sudo su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt
…然后变得非常聪明,做一些事情,比如:

sudo su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt
echo "$pw" | sudo su - user1 -c "more .ssh/authorized_keys" > scratch/output.txt
…同时输入密码

我只使用Linux几个星期,通常我是一个VB程序员

谢谢


克里斯蒂安

怎么了,打印错误,工作不正常?第三个适用于我如果$pw是用户user1的密码,我认为这不起作用。将第三个修改为忘记sudo命令。输入密码后运行第二个时出错:抱歉,MyLogin不允许在wksta44.company.co上以root用户身份执行'/bin/su-user1-c more.ssh/authorized_key。uk@MicroAleX-我希望$pw会是我的密码,因为如果我不尝试输入密码,这就是要求的-只是su要求输入user1密码,sudo接受你的密码。@Kristian你试过echo password | sudo-u user1-S more.ssh/authorized|u keys | tee scratch/output.txt吗?