主頁 > 知識庫 > windows下寫的shell腳本在linux執(zhí)行出錯的解決辦法

windows下寫的shell腳本在linux執(zhí)行出錯的解決辦法

熱門標(biāo)簽:百度地圖標(biāo)注錯了有責(zé)任嗎 如果做線上地圖標(biāo)注 客服外呼系統(tǒng)怎么樣 河南信譽好的不封卡電話外呼系統(tǒng) 揭陽智能電話機器人推薦 華鋒e路航港口地圖標(biāo)注 江蘇云電銷機器人公司 地圖標(biāo)注員都是年輕人 打電話機器人接我是他的秘書

在Windows下寫了一個shell腳本,上傳到Linux下執(zhí)行時報錯:

復(fù)制代碼 代碼如下:
[root@localhost test]# ./test.sh  
-bash: ./test.sh: /bin/sh^M: bad interpreter: No such file or directory

test.sh源碼: 
復(fù)制代碼 代碼如下:
#!/bin/sh 

echo "test shell "

由于自己對shell不太熟悉,找同事溝通了后了解了原委,主要原因是test.sh是我在windows下編輯然后上傳到linux系統(tǒng)里執(zhí)行的。.sh文件的格式為dos格式。而linux只能執(zhí)行格式為unix格式的腳本。因為在dos/window下按一次回車鍵實際上輸入的是“回車(CR)”和“換行(LF)”,而Linux/unix下按一次回車鍵只輸入“換行(LF)”,所以修改的sh文件在每行都會多了一個CR,所以Linux下運行時就會報錯找不到命令。
我們可以通過vi編輯器來查看文件的format格式。步驟如下:
1.首先用vi命令打開文件
[root@localhost test]# vi test.sh  
2.在vi命令模式中使用 :set ff 命令
可以看到改文件的格式為

復(fù)制代碼 代碼如下:
fileformat=dos

3.修改文件format為unix
使用vi/vim修改文件format
命令::set ff=unix
或者::set fileformat=unix

然后:wq保存退出就可以了

您可能感興趣的文章:
  • PowerShell中獲取Windows系統(tǒng)序列號的腳本分享
  • Windows Powershell 執(zhí)行文件和腳本
  • PowerShell腳本中控制Windows DNS服務(wù)的方法
  • linux和windows下的自動ftp腳本(shell bat)
  • 下一代Shell腳本語言,Windows Power Shell!
  • windows下上傳shell腳本不能運行的解決方法

標(biāo)簽:婁底 巴彥淖爾 金昌 邵陽 馬鞍山 淘寶邀評 赤峰 許昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《windows下寫的shell腳本在linux執(zhí)行出錯的解決辦法》,本文關(guān)鍵詞  windows,下,寫的,shell,腳本,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《windows下寫的shell腳本在linux執(zhí)行出錯的解決辦法》相關(guān)的同類信息!
  • 本頁收集關(guān)于windows下寫的shell腳本在linux執(zhí)行出錯的解決辦法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章