Bash脚本冲突

时间:2018-08-02 16:43:13

标签: bash shell

我正在尝试编写一个bash脚本,该脚本创建文件夹并安装软件。安装该软件需要超级用户特权,但是无法以超级用户身份创建文件夹。

以下是脚本的示例:

#!/bin/bash/
cd ~
mkdir Documents
pacman -S firefox

有人知道如何克服这一冲突吗?

1 个答案:

答案 0 :(得分:1)

除了以root身份运行整个脚本之外,还可以在脚本中使用sudo以root身份仅运行pacman命令:

#!/bin/bash
mkdir ~/Documents
sudo pacman -S firefox

这样,将在用户的主目录中创建Documents/文件夹,然后提示您输入root密码,以便以超级用户身份执行pacman命令。


注意:

如@jeremysprofile在评论中所述:

  

您绝对可以将文件夹设置为root

我想问题是您希望在用户的主目录中创建Documents/文件夹。但是,如果您以root用户身份运行脚本,则~会扩展到超级用户的主目录:/root/。因此,在这里您将使用当前脚本创建Documents/文件夹。