linux文件找不到怎么辦?
當在linux系統(tǒng)下執(zhí)行本來存在的shell腳本文件,但是在執(zhí)行時就是提示你文件不存在。
此時一般原因就是你shell腳本在編寫時的系統(tǒng)跟你的執(zhí)行腳本的系統(tǒng)不一致,比如你在window系統(tǒng)編寫的腳本,當拷貝到Linux系統(tǒng)時就會遇見此問題。原因是在windows下編輯的.sh文件的格式為dos格式,而linux只能執(zhí)行格式為unix格式的腳本。
因為在dos/window下按一次回車鍵實際上輸入的是“回車(CR)”和“換行(LF)”,而Linux/unix下按一次回車鍵只輸入“換行(LF)”,所以修改的sh文件在每行都會多了一個CR,所以Linux下運行時就會報錯找不到命令。
另外就是當你在github上使用windows系統(tǒng)下載源文件中包含shell腳本文件 時,當你解壓并拷貝到Linux系統(tǒng)執(zhí)行時,也可能發(fā)生此問題。
推薦:《linux教程》
解決辦法:
我們可以通過vi編輯器來查看文件的format格式。步驟如下:
1.首先用vi命令打開文件
[root@localhost test]# vi test.sh? ?
2.在vi命令模式中使用 :set ff 命令
可以看到文件的格式為
fileformat=dos
3.修改文件format為unix
使用vi/vim修改文件format
命令::set ff=unix
或者::set fileformat=unix
然后:wq保存退出,重新執(zhí)行腳本就正常了