unable to execute ./start.sh: No such file or directory


剛編寫的一個shell文件執行時突然遇到shell文件不能運行,一下子覺得奇了怪了,明明寫的shell文件,而且添加了可執行權限,竟然提示這個結果:如下

 

[testuser@ISER-2812 opt]$ sudo ./my.sh sudo: unable to execute ./my.sh: No such file or directory

     嘗試對文件的用vim打開該sh文件,輸入:set ff ,顯示fileformat=unix,說明沒有問題(如果顯示fileformat=dos,則有問題,使用命令:set ff=unix 重新設置下文件格式再保存退出)。但是經過幾次嘗試還是提示這樣的現象,最后我打開shell文件,把文件的前幾行都刪除,特別是首句指定命令解釋器的那行代碼。將它們都刪除再在vi命令中編寫保存。這時再執行成功了。

 

    於是想起問題了,我的shell文件是我從windows中的記事本中復制然后在linux的VI中粘貼的,而windows記事本中保存的格式是ANSI,此時粘貼到linux里時文件的頭部可能是垃圾字符導致linux下的shell不能識別sh文件。我沒有去嘗試,如果將記事本保存成utf8格式的話進行復制粘貼應該就不會碰到這樣的問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM