原因:
因為妳所處理的文件換行符是dos格式的”\r\n” ;
可以使用cat -v 文件名 來查看換行符是否是,如果是上述的,則行結尾會是^m?需要轉換成linux/unix格式的”\n”;
具體轉換辦法就是轉換換行符 。
可以用sed命令處理壹下文件,命令如下:?
sed ‘s/\r//’ 原文件 >轉換後文件 ;
sed 命令的參數中 ”代表決定引用參數,不允許參數中的值讓shell解釋,s代表替換 /後面跟的是被替換的內容,後面的//代表替換後的內容為空 ;
推薦使用EditPlus或者UltraEdit,使用這些文本編輯工具,在保存時,可以選擇保存的文字編碼類型,比如選擇UNIX格式換行符;
我比較喜歡EditPlus的join lines功能,把多行的值變成壹個邏輯行,便於寫到shell腳本中作為循環的變量。