我正在阅读以下代码:
$ sudo bash
# cd /home/
# ./gitpull.sh
Run Code Online (Sandbox Code Playgroud)
为什么我需要第一行,它到底是做什么的?如果我只是做了$ sudo而不是$ sudo bash?
它以root级别用户身份启动 bash shell 。您需要它,因为通常普通用户无法访问/home/
你正在做的事情的危险是你在一个 root shell 中——你很容易弄乱你的机器。
你最好这样做:
$ sudo sh -c 'cd /home; ./gitpull.sh'
Run Code Online (Sandbox Code Playgroud)
因为以 root 身份调用的命令将被记录。直接通过 sudo 调用 shell 会避免 sudo 的所有安全优势,因此应该避免。
| 归档时间: |
|
| 查看次数: |
65046 次 |
| 最近记录: |