在自定义我的 bash 配置文件时有什么区别,哪个更好用?该export命令的文档很少,因为它是一个内置的 cmd。
摘自我的 ~/.bash_profile 版本 1:
#PATH
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$HOME/bin
#add Homebrew’s sbin to PATH
export PATH=/usr/local/sbin:$PATH
Run Code Online (Sandbox Code Playgroud)
输出: echo $PATH
/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/njboot/bin
摘自第 2 版:
#PATH
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$HOME/bin
#add Homebrew’s sbin to PATH
export PATH=/usr/local/sbin:$PATH
Run Code Online (Sandbox Code Playgroud)
输出与echo $PATH版本 1env中的相同。也是相同的。
所以:
export与显式设置 PATH 有什么好处?我知道我可以sudo mypassword在 my 中放入类似的东西.bash_profile,但我不想以 root 身份运行每个命令。
我希望在以下情况下自动填充密码:
sudo例子:
sudo cd /var/root #When I type this
Password: #I don't want to be prompted for my password
#I want to fill it from my `.bash_profile`
Run Code Online (Sandbox Code Playgroud)
但:
cd /var/root #When I type this
-bash: cd: /var/root: Permission denied #I still want this, or the like, returned
Run Code Online (Sandbox Code Playgroud)
我在增加 sudo timeout 上看到了这篇文章,但我认为这并不完全相同。例如,我希望它跨越不同的 shell 登录会话。我可能是错的。
关于添加什么(或不添加!).bash_profile或哪种方法 ( …
例如:
mkdir ~/{1,2,3}
创建目录~/1,~/2和~/3。它相当于:
mkdir ~/1
mkdir ~/2
mrdir ~/3
Run Code Online (Sandbox Code Playgroud)
但是,在以下情况下使用相同的语法CMD < argument >:
brew {install, update, doctor}
Run Code Online (Sandbox Code Playgroud)
...相当于shell解释的废话。这并不意味着:
brew install
brew update
brew doctor
Run Code Online (Sandbox Code Playgroud)
制作一个快速脚本很容易,但必须有有一种更简单的方法在 bash 中使用扩展或替换。我错过了什么?
运行Bash 3.2.57(1)-release上OS X 10.10.2
bash ×3
osx ×2
arguments ×1
path ×1
permissions ×1
profile ×1
shell ×1
shell-script ×1
sudo ×1
variable ×1