linux 系統區分英文本元的大小寫。命名目錄和命名檔案的規則是相同的。除非有特別的原因,否則使用者建立的檔案和目錄名要使用小寫字元。大多數的 linux 命令也使用小寫字元。 linux 系統下的檔名長度最多可到256個字元。通常情況下,檔名的字元包括:字母、數字、"."(點)、"_"(下劃線)和"-"(連字元)。linux 允許在檔名中使用除上述符號之外的其它符號, 但並不建議使用者這樣做。 有些轉意字元 (即該字元被系統借用,表示某種特殊含義)在linux 的命令直譯器(shell)中有特殊的含義(shell 類似於 dos下的命令處理器command.com)。這樣的轉意字元有:"?"(問號),"*"(星號), " "(空格), "$"(貨幣符), "&", 擴號等等。在檔名中應盡量避免使用這些字元。檔名中可以有" "(空格),但建議使用者用"_"(下劃線)來替代。"/" 既可代表目錄樹的根也可作為路徑名中的分隔符(類似dos下的"/),因此"/"不能出現在檔名中。和dos一樣,"." 和 ".." 分別用來表示"當前目錄"和"父目錄", 因此它們也不能作為檔名。正如dos 中一樣,我們不能將檔案命名為 . 或者 .. (點或者雙點)——它們分別代表當前目錄和當前目錄的父目錄(上一級目錄)。這跟dos中是完全一致的。
在linux下可以使用長檔名和目錄名,可以給它們取任何名字,但是必須遵守以下規則:
☆除了/外,所有的字元都可以;
☆有些字元最好不用,如空格符,製表符,退格符和字元:? @ # $&()/|; 『』「」<>等;
☆避免使用+ -或.作為普通檔名的第乙個字元(在linux下以.開頭的檔案是屬於隱藏檔案);
☆另外和windows檔案命名不一樣的是,在linux下檔名大小寫敏感。
這是另乙份資料:
linux 系統區分英文本元的大小寫。比如,myfile, myfile 和 myfile表示的是三個不同的檔案。同樣,使用者密碼和登入名也需要區分大小寫(這裡沿用了unix 和 c 語言的命名規則)。命名目錄和命名檔案的規則是相同的。除非有特別的原因,否則使用者建立的檔案和目錄名要使用小寫字元。大多數的 linux 命令也使用小寫字元。
linux 系統下的檔名長度最多可到256個字元。通常情況下,檔名的字元包括:字母、數字、"."(點)、"_"(下劃線)和"-"(連字元)。linux 允許在檔名中使用除上述符號之外的其它符號, 但並不建議使用者這樣做。 有些轉意字元 (即該字元被系統借用,表示某種特殊含義) 在linux 的命令直譯器(shell)中有特殊的含義(shell 類似於 dos下的命令處理器 command.com)。這樣的轉意字元有:"?"(問號),"*"(星號), " "(空格), "$"(貨幣符), "&", 擴號等等。在檔名中應盡量避免使用這些字元。檔名中可以有" "(空格),但建議使用者用"_"(下劃線)來替代。
"/" 既可代表目錄樹的根也可作為路徑名中的分隔符(類似dos下的"/),因此"/"不能出現在檔名中。
和dos一樣,"." 和 ".." 分別用來表示"當前目錄"和"父目錄", 因此它們也不能作為檔名。
正如dos 中一樣,我們不能將檔案命名為 . 或者 .. (點或者雙點)——它們分別代表當前目錄和當前目錄的父目錄(上一級目錄)。這跟dos中是完全一致的。
下面列出了一些轉意字元及其意義:
* = 用於匹配任意長度大於等於零的字串行。以 . (點)開頭的檔名除外。
? = 用於匹配任意單個字元
[abc1] = 用於匹配列舉集合中任意單個字元。比例中,集合由『a』,『b』,『c』,『1』組成。
[a-z] = 用於匹配任意小字字母
[a-f] = 用於匹配任意大寫字母
[0-9] = 用於匹配任意個位數字
[a-za-z0-9] = 用於匹配任意字母(大小寫)或者數字。
/ (反斜線)也是乙個特殊的字元。它遮蔽後繼特殊字母的特殊含義**意),使該字元僅取其符號所代表的字面意義。
例: 下面的命令會列出當前目錄中除了檔名以 . 開頭的檔案之外的任何檔案。
ls *
與此等價的命令是ls 或者 dir (不需要後跟 「*」)。 檔名以 . 開頭的檔案不被列出是因為 「.」是檔名的首字元,它並不與「*」匹配。我們可以把檔名以 . 開頭的檔案等價地理解成dos中隱藏檔案。使用ls –a (帶 all 選項的ls 命令)或者 ls .* 命令來檢視這些「點」檔案。「點」檔案在使用者的home目錄中很常見。它們通常是使用者級的配置檔案。
以下命令可列出當前目錄中檔名含 . 的任何檔案 (檔名以點開頭的除外)。
ls *.*
以下命令可列出當前目錄中檔名含兩個點的任何檔案(檔名以點開頭的除外)。
ls *.*.*
請注意linux中沒有與dos中副檔名相應的概念,但是你可以使用副檔名。例如,乙個檔案可以命名為 my_text.txt.zip 。另有一些dos中的命名特色在linux中是完全找不到的(比方說micro~1.doc )。
以下的命令會找出擴充套件名為「htm」後再跟任意乙個字元的檔案:
locate *.htm?
以下命令可列出當前目錄中所有檔名以a,b或者任意大寫字母開頭的檔案:
ls [aba-z]*
以下命令可列出當前目錄中所有檔名以a開頭,以n結尾的檔案:
ls a*n
命令列自動完成是乙個有用的功能——使用[tab]鍵可以極大的節約時間,使處理複雜的長檔名變得輕鬆。例如,使用自動完成的功能,可以極大的減化輸入以下這個長檔名的工作。
dir eurosong/ 2000/ olson/ brothers/ -/ fly/ on/ the/ wings/ of/ love/ /(denmark/).***
我只要輸入
dir eu
如果沒有其他檔案的檔名以eu 開頭,輸入之後,系統會自動輸入檔名的其餘部分。
如果還有其他檔案的檔名也以eu開頭,我們可以檢視一下可能的選擇(系統會列出),進一步輸入檔名中的下一兩個字元,從而使檔案的選擇唯一化,系統的自動寫成功能就可以啟動完成整個長檔名的輸入了。檔名中的反斜線作用在於提示系統其後繼的字元「空格」僅取其字面意義,即,檔名中包含的確實是空格。
檔名中的有「怪」字元怎麼辦?大部分問題可以通過自動完成功能解決。另外,處理檔名中含有轉意字元的檔案,我們可以使用成對的『』(單引號)。由於這些特殊的轉意字元被單引號引用,命令直譯器不會試圖去解釋其特殊意義。例如,給乙個名為my file*的檔案更名(檔名中含空格和*), 我們可以使用:
mv 'my file*' filename_without_weird_characters.txt
請注意我使用了一對『』號 (單引號)。使用成對的「」(雙引號)引用通常沒有使用『』有效。如果你使用「」號(雙引號), 部份轉意字元可能會被命令直譯器加以解釋(這就意味著它們可能被轉意,而不是保持字面意義)。
跟從unix的傳統,在linux上,建立檔案時,我們可以在檔名中可以使用幾乎任何字元,包括不可列印字元(控制字元)。但是這情況非常少見。如果你在遇到檔名使用了這些字元,你可能會感覺很異樣。我通常會在適當的位置使用乙個轉意字元*對這種檔案進行重新命名。我會先使用ls命令確認我要重新命名的檔案的檔名,然後對這個檔案進行更名(使用mv 命令):
ls –l myfile*y.html
mv myfile*y.html myfile.html
(此例中我假定非標準字元位於字母e和y之間)
這裡舉乙個關於在檔名中使用非常規字元的極端的例子: 建立乙個檔名以短橫線 - 開頭的檔案,再等它刪除。 用常規的刪除命令似乎沒有辦法(因為短橫錢通常是用來引導命令選項的)。例如:
dir > -junk
以上命令將建立乙個以-junk為名的檔案(跟dos類似,符號 > 將dir 命令的輸出重定向到乙個名為「-junk」的檔案。常規的刪除檔案命令無法把這個檔案刪除。我們需要使用:
rm ./-junk
檔名前的./ 表示當前目錄。在此其目的是避免檔名把的首字元 - 被命令直譯器當作rm命令的選項引導。事實上沒有必要在檔名中使用這些特殊字元。遵從傳統的命名規則,不會過多地使事情複雜化。
除了使用自動完成,單引號,雙引號之外,我們也可以利用 / (反斜線) 對檔名中包含了非常規字元的檔案進行操作。反斜線的作用在於遮蔽其後繼字元的特殊意義。例如,我可以使用如下命令建立乙個以 *?[ 為檔名的檔案:
touch /*/?/[
(touch 命令建立乙個空檔案。如果同名檔案已存在,則改變該檔案最後更新的日期/時間)。
linux 檔名命名規則
linux 系統區分英文本元的大小寫。命名目錄和命名檔案的規則是相同的。除非有特別的原因,否則使用者建立的檔案和目錄名要使用小寫字元。大多數的 linux 命令也使用小寫字元。linux 系統下的檔名長度最多可到256個字元。通常情況下,檔名的字元包括 字母 數字 點 下劃線 和 連字元 linux...
Linux檔名命名規範
注意 在linux下全部檔案和資料夾命名都是小寫的!linux系統區分英文本元的大小寫。命名目錄和命名檔案的規則是相同的。除非有特別的原因,否則使用者建立的檔案和目錄名要使用小寫字元。大多數的linux命令也使用小寫字元。linux系統下的檔名長度最多可到256個字元。通常情況下,檔名的字元包括 字...
Linux檔名命名規範
注意 在linux下全部檔案和資料夾命名都是小寫的!linux系統區分英文本元的大小寫。命名目錄和命名檔案的規則是相同的。除非有特別的原因,否則使用者建立的檔案和目錄名要使用小寫字元。大多數的linux命令也使用小寫字元。linux系統下的檔名長度最多可到256個字元。通常情況下,檔名的字元包括 字...