linux运行时命令找不到,linux - 在运行Bash脚本时找不到命令,但是在直接运行命令时有效 - 堆栈内存溢出...
我一直在使用letencrypt為我的網站生成SSL證書,更具體地說是letencrypt_webfaction。 當我在項目中運行此命令時,它可以工作
letsencrypt_webfaction --letsencrypt_account_email --domains --public --username --password
但是,當我在bash腳本中運行相同的命令時,出現錯誤
generate_certificate.sh: line 2: letsencrypt_webfaction: command not found
我確保使用chmod 777 generate_certificate.sh對bash腳本擁有所有可能的權限,但仍然沒有任何權限。 最重要的是,我有一個bash腳本可以在此之前運行,可以重新啟動Apache,并且運行良好。
我閱讀了諸如此類的其他SO文章,并嘗試運行dos2unix script.sh ,該文章確實運行成功,但是當我再次嘗試運行bash腳本時,它不起作用。
重新啟動Apache腳本
#!/bin/bash
../apache2/bin/./restart
#END
生成SSL腳本
#!/bin/bash
letsencrypt_webfaction --letsencrypt_account_email --domains --public --username --password
#END
我是python開發人員,并且對Ruby沒有太多經驗,所以請原諒我的無知,但是letsencrypt_webfaction命令是我的bash配置文件中的一個函數。
在?/ .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
function letsencrypt_webfaction {
PATH=$PATH:$GEM_HOME/bin GEM_HOME=$HOME/.letsencrypt_webfaction/gems RUBYLIB=$GEM_HOME/lib ruby2.2 $HOME/.letsencrypt_webfaction/gems/bin/letsencrypt_webfaction $*
}
eval "$(rbenv init -)"
PATH=$PATH:$HOME/bin
export PATH
export PATH="$HOME/.rbenv/bin:$PATH"
export TMPDIR="/home/doc4design/src/tmp"
總結
以上是生活随笔為你收集整理的linux运行时命令找不到,linux - 在运行Bash脚本时找不到命令,但是在直接运行命令时有效 - 堆栈内存溢出...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 哈工大华中科技大学计算机学院官网,我国重
- 下一篇: java 保存 设置_java – 保存