• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-145  評論-173  文章-70  trackbacks-0
            Windows和Linux下面對于行末符的表示不同,Windows下面是\r\n,而Linux則是\n
            因此,如果在Windows下面編輯的腳本文件,如shell腳本文件,在Linux下面執(zhí)行失敗,會提示多一個^M符號,用VIM打開也會發(fā)現(xiàn)增加這個符號。

            解決辦法:
            1. 用VIM打開,設(shè)置編碼為unix
            :set fileformat=unix
            然后,保存,結(jié)尾unix格式。

            2. 使用VIM的替換功能,替換行末的\r符號即可
            :%s/^M//g

            3. 使用sed來進(jìn)行批量處理
             sed ’s/^M//’ filename > tmp_filename

            4. 批量處理(推薦使用)
            sudo apt-get install dos2unix
            find . * | xargs dos2unix (對當(dāng)前目錄下面的所有文件執(zhí)行轉(zhuǎn)換格式的命令)

            一個需要注意的點:dos2unix需要root權(quán)限,我開始的時候沒有用sudo運(yùn)行,提示轉(zhuǎn)換失敗,后來利用sudo執(zhí)行即可。
            問題的根源來源于:
            在Windows下面拉取Git上面的代碼,結(jié)果給版本庫所有的文件都加上了行末符號,而在Linux下面再次編輯該文件就發(fā)現(xiàn)所有的問題都出現(xiàn)問題,提交的時候又不能
            把所有的文件都提交成Windows的編碼,因為這部分修改是沒有意義的,所以需要批量轉(zhuǎn)換。


            posted on 2012-07-07 22:54 deercoder 閱讀(2131) 評論(0)  編輯 收藏 引用 所屬分類: Unix/LinuxShell/Bash
            99久久国产宗和精品1上映| 久久本道综合久久伊人| 99久久精品免费看国产一区二区三区| 亚洲精品午夜国产va久久| 久久久久久久久无码精品亚洲日韩 | 亚洲精品乱码久久久久久不卡| 久久久久九九精品影院| 日韩av无码久久精品免费| 99久久综合国产精品二区| 2021国内精品久久久久久影院| A狠狠久久蜜臀婷色中文网| 欧美日韩精品久久久免费观看 | 日本人妻丰满熟妇久久久久久| 7国产欧美日韩综合天堂中文久久久久| 精品久久久久中文字幕一区| 色诱久久久久综合网ywww| 久久人搡人人玩人妻精品首页| 97久久久久人妻精品专区| 久久人妻AV中文字幕| 久久久久久久亚洲精品| 久久91精品国产91久久小草| 青青草原综合久久大伊人| 久久国产三级无码一区二区| 精品永久久福利一区二区| 人妻精品久久无码专区精东影业| 欧美精品福利视频一区二区三区久久久精品| 久久国产热精品波多野结衣AV| 久久久久久久久久久精品尤物| 久久久久久A亚洲欧洲AV冫| 国产精品伦理久久久久久| 狠狠色丁香婷综合久久| 99国产欧美精品久久久蜜芽| 中文无码久久精品| 色综合久久久久综合体桃花网| 亚洲综合久久夜AV | 亚洲午夜无码久久久久小说| 久久亚洲国产成人精品无码区| 午夜精品久久久内射近拍高清| 无码任你躁久久久久久久| 亚洲国产视频久久| 久久久午夜精品|