在windows下編輯shell腳本注意點

編輯腳本是直接在windows下寫的,並沒有使用特定的編輯器或者其他工具,所以很有可能出現一些莫名其妙的異常,這些錯誤是我們眼睛看不到的,遇到這個情況,例如如下異常或者提示語法錯誤 
Java代碼 
unexpected end of file 

我們可以在linux上使用cat命令,進行清洗數據, 
使用工具 cat 和 tr, 方法如下: 
bash$ cat -v startqftest.sh |tr -d "^M" > qf.sh 

其中 startqftest.sh 是存在問題的腳本, qf.sh是新生成的文件。 
sed 's/^M//' test.sh > back.sh^M是Ctrl+v Ctrl+m 

解釋一下, cat 可以查看許多不可見這符, 
cat -t 顯示TAB 爲 ^I 
cat -e 顯示行尾爲 $, 
cat -v 顯示不可見字符,用^M表示,所以^M就表示不認識的不可見字符。M 表示Mark,標記的意思。 
tr - translate or delete characters 
另外,cat 還可以用來調Makefile, 
cat -t Makefile 查看命令中有非Tab開頭的, 
grep '^ ' Makefile 查找命令行中以空格開頭的行 
cat -e Makefile 查看行尾是否正確,防止\後面多一個空格, 
grep '\\[ ]$' Makefile 找出以上那樣的行 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章