San*_*dra 10 linux ubuntu bash centos
如果我做
su - -c 'mkdir bin' user1
Run Code Online (Sandbox Code Playgroud)
然后我得到
su: /usr/bin/ksh: No such file or directory
Run Code Online (Sandbox Code Playgroud)
因为用户 shell 设置为kshin/etc/passwd并且ksh未安装。
题
在这种情况下,如何以用户身份执行命令?
fre*_*eit 12
您可以使用:
su -s /bin/sh -c 'mkdir bin' user1
Run Code Online (Sandbox Code Playgroud)
该-s选项苏指定外壳使用,覆盖无论是在/ etc / passwd文件。
我-从您的命令中删除了,因为除了加载配置文件外,它可能会将工作目录更改为该命令的用户的主目录,因此您将在 user1 的主目录中创建“bin”,而不是您当前的主目录目录。
| 归档时间: |
|
| 查看次数: |
15947 次 |
| 最近记录: |