linux下檔案特殊字元處理

2021-06-20 12:53:24 字數 649 閱讀 9542

在windows下編輯的檔案,放到linux下執行經常會出現各種莫名其妙的問題,用vim開啟檢視檔案,會看到一些特殊字元,常見的有

1. ^m 

該字元出現在一行文字的結尾,出現的原因是windows使用cr(回車\r)lf(換行\t)兩個字元來作為一行文字的結束符號,而linux下是使用lf單個字元作為單行文字結束,因此在windows下編輯過的文字中如果使用過回車來換行,在linux下就會出現^m字元,可以用如下命令來消除:

sed -i  's/\r//g' filename

-i 表示在原始檔案中直接修改,重定向則可以用:

sed 's/\r//g' oldfilename > newfilename

2. bom

該字元是由於在windows下編輯的檔案,採用utf作為編碼格式儲存時,編輯器會在檔案開頭新增乙個bom標記(byte order mark)來標識utf編碼所採用的位元組序,使用如下命令可以看到檔案頭的bom字元:

cat filename | head -1 | sed -n l

而我們經常採用的utf-8採用單位元組編碼,因此不存在位元組序的問題,而bom在linux中處理又會存在各種問題,因此可以採用如下命令去除檔案中的bom標記:

sed -i 's/^\xef\xbb\xbf//;' filename

linux 下檔案特殊許可權

linux特殊許可權 特殊許可權 s setuid 當乙個命令具有setuid許可權時,普通使用者在執行此命令時,將以這個命令所有者的身份執行,ll etc passwd etc shadow rw r rxx 1 root root 1795 sep 25 10 12 etc passwd r 1...

Linux下檔案的特殊許可權

檔案許可權 是指對檔案的訪問許可權,包括對檔案的讀 寫 刪除 執行等。linux 是乙個多使用者作業系統,因此 linux 將乙個檔案或目錄與乙個使用者和組聯絡起來。對於檔案的讀 r 寫 w 執行 x 許可權,我們比較熟悉了,為了引出後面特殊許可權,我們對目錄檔案的寫 w 許可權進行講解。首先需要明...

linux下檔案的特殊許可權s和t

先看看這兩個檔案的許可權 root localhost ls ld usr bin passwd tmp drwxrwxrwt 4 root root 4096 jun 2 17 33 tmp rwsr xr x 1 root root 22984 jan 7 2007 usr bin passwd...