我想運行一個非常簡單的bash腳本,在shell上運行一些命令。現在,一切由是:簡單的Bash腳本說沒有找到命令
#!/bin/bash
eos
其中「EOS」是運行如果我在同一個外殼手動運行它,我在服務器上使用完全正常的完全合法的命令。
然而,當我使用chmod + x和執行該腳本,我得到的錯誤:
沒有人有任何想法,爲什麼它不會提交這些命令?
在此先感謝!
我想運行一個非常簡單的bash腳本,在shell上運行一些命令。現在,一切由是:簡單的Bash腳本說沒有找到命令
#!/bin/bash
eos
其中「EOS」是運行如果我在同一個外殼手動運行它,我在服務器上使用完全正常的完全合法的命令。
然而,當我使用chmod + x和執行該腳本,我得到的錯誤:
沒有人有任何想法,爲什麼它不會提交這些命令?
在此先感謝!
什麼用戶正在運行該腳本?我懷疑是一個環境或密碼問題,雖然權限是可能的。 嘗試使用eos的完整路徑或在腳本中設置必要的環境。
謝謝,我甚至沒有想過eos是一個別名(我也不知道你不能在bash腳本中使用別名)。無論如何,我只是鍵入了整個別名,現在它工作正常。謝謝! – khfrekek
在命令所在的目錄不在PATH(一個env變量)中找到命令時,在unix shell中找不到「command not found」錯誤。
對此的解決方案是任一的任何無論是在殼啓動文件或用戶下面
一個)變化PATH和出口PATH變量提到的方法2的型材
export PATH=$PATH:/eos-command-directory-location/
b)運行EOS命令在你已經開發完整路徑的shell腳本中
1.您不需要導出'PATH'變量(它很可能已經標記爲導出)。 2.你的作業中有拼寫錯誤:路徑以冒號分隔。你需要引用'PATH'變量的擴展。 4.您是否讀過OP的問題已解決,您是否注意到您的問題在您的答案中未提及? (所以你的聲明_解決這個問題的方法是下面提到的兩種方法中的任何一種 - 是不正確的)。 –
更正了錯字,謝謝 – iam
不是'eos'只是一個別名? – ewcz
嘗試'輸入eos'來找出真正的'eos'。 – choroba
你們是對的!我甚至沒有想過eos是一個別名(我也不知道你不能在bash腳本中使用別名)。無論如何,我只是鍵入了整個別名,現在它工作正常。謝謝! – khfrekek