gpt4 book ai didi

linux - 切换用户并输出变量内容

转载 作者:太空宇宙 更新时间:2023-11-04 11:42:02 26 4
gpt4 key购买 nike

我正在写一个 bash 脚本,想切换到另一个用户,cd 到用户 bash_profile 中 MYDIR 指定的目录并列出内容。

目前我有:

read username
su - app${username} -c ls $MYDIR

输出什么也没有,我的第一个猜测是从用户配置文件中读取 $MYDIR 是一个问题,因为手动执行它可以正常工作,例如

#su - appadmin
#ls $MYDIR

最佳答案

需要引用要执行的命令。

目前 shell 正在用调用者环境中的值替换 $MYDIR。此外 -c 只传递下一个要执行的参数,即 ls 没有 $MYDIR - 你需要在整个远程命令周围加上引号:

su - app${username} -c 'ls $MYDIR'

关于linux - 切换用户并输出变量内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1698145/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com