我需要執行一個腳本來在指定位置提取tar。即使路徑正確,shell腳本cd也會失敗
我不喜歡簡單的東西:
cp test.tar /var/www/html
cd /var/www/html
tar xvf test.tar
如果我執行命令手工一切正常。如果我將它們保存在.sh中,然後使用#bash script.sh,則會出現以下錯誤:「不是目錄cd:/ var/www/html」。任何ideea爲什麼?
Ty爲你的時間。
說明:我試過了虛擬機上的腳本版本(CentOS 5.5),腳本工作正常,問題發生在我想要使用它的實際機器上(我使用了相同的操作系統磁盤映像,虛擬機......這對我來說真的很奇怪)。
補充:我也嘗試調用類似service mysqld start的東西...這也失敗了,說一個dir不存在(如果我用手工運行,它仍然有效)。
如果'html'不存在,複製命令會將您的test.tar重命名爲'html'。確保它實際上是一個目錄,而不是文件的副本。 – Cfreak
它存在...是一個目錄 – zozo
您是否以不同的用戶身份運行腳本?嘗試在腳本的頂部添加'whoami'和'ls -la/var/www',並將它們提供的輸出與直接從命令行運行時得到的輸出進行比較。 – Costa