一天一個shell命令 linux檔案操作系列-ln命令詳解_linux shell

來源:互聯網
上載者:User

裡提示一下:ubuntu的翻譯很多都是字面直譯,存在很多問題,所以建議大家參照我這裡的解釋。當然本來也是有些趕文的嫌疑,望指正。

經常在linux上操作,有在不同的目錄下切換某幾個固定的命令,或者修改幾個固定的檔案,這時候,如果能在一個目錄下就操作他們,會是一件多麼輕鬆的事情。我們來看看連結命令ln

全稱

ln 全稱是link 顧名思義,這是一個建立一個連結。怎麼去理解呢?它的功能類似於Mac OS的別名或者Windows的捷徑, 刪除不會影響檔案本身。

說明:(直接看看斜體,就行了)

連結可分為兩種:永久連結(hard link)與軟連結(symbolic link),

不論是那種類型的連結, 都提供了一種雙向引用的手段 -- 也就是說, 不管你用檔案的那個名字對檔案內容進行修改, 你修改的效果都即會反映到原始名字的檔案, 也會反映到連結名字的檔案.當你工作在更高層次的時候, 才會發生軟永久連結的不同. 硬鏈
 接的優點是, 原始檔案與連結檔案之間是相互獨立的 -- 如果你刪除或者重新命名老檔案, 那麼這種操作將不會影響永久連結的檔案, 永久連結的檔案講還是原來檔案的內容.
然而如果你使用軟連結的, 當你把老檔案刪除或重新命名後, 軟連結將再也找不到原來檔案的內容了. 而軟連結的優點是它可以跨越檔案系統(因為它只不過是檔案名稱的一個引用, 而並不是真正的資料). 與永久連結的另一個不同是, 一個符號連結可以指向一個
 目錄.

例子:

1.$ln file.txt  file.copy

file.copy就是 file.txt的一個捷徑

查看—help

複製代碼 代碼如下:

用法:ln [選項]... [-T] 目標 連結名 (第一種格式)
或:ln [選項]... 目標 (第二種格式)
或:ln [選項]... 目標... 目錄 (第三種格式)
或:ln [選項]... -t 目錄 目標... (第四種格式)
在第一種格式中,建立指定名稱且指向指定目標連結。
 在第二種格式中,在目前的目錄建立指向目標位置的連結。
 在第三、四種格式中,在指定目錄中建立指向指定目標的連結。
 預設建立永久連結,當使用--symbolic 時建立符號連結。
 當建立永久連結時每個指定的目標都必須存在。符號連結可以指向任意的位置,
 當連結解析正常時,將其解析為一個與其父目錄關聯的連結。
長選項必須使用的參數對於短選項時也是必需使用的。
  --backup[=CONTROL]     為每個已存在的目標檔案建立備份檔案
-b 類似--backup,              但不接受任何參數
-d, -F,   --directory                建立指向目錄的永久連結(只適用於超級使用者)
-f, --force                              強行覆蓋任何已存在的連結檔案
-i, --interactive                       覆蓋連結檔案前進行確認
-L, --logical                            將永久連結建立為符號連結引用
-n, --no-dereference               如果目的地是一個連結至某目錄的符號連結,會將
                                               該符號連結當作普通檔案處理,先將該已存在的鏈
                                               接備份或覆蓋
-s, --symbolic                         建立符號連結(軟連結)而非永久連結
-S, --suffix=尾碼                   自行指定連結檔案的尾碼
-t, --target-directory=目錄     在指定目錄中建立連結
-T, --no-target-directory          將連結名稱當作普通檔案
-v, --verbose                           連結前列印相關資訊

--help 顯示此協助資訊並退出
--version 顯示版本資訊並退出

備份檔案的尾碼為"~",除非以--suffix 選項或是SIMPLE_BACKUP_SUFFIX
環境變數指定。版本控制的方式可通過--backup 選項或VERSION_CONTROL 環境
 變數來選擇。以下是可用的變數值:

使用 -s 選項會忽略 -L 和 -P。
 否則當源為一個符號連結(預設-P)時,會由最後指定的一個選項來控制行為。

none, off 不進行備份(即使使用了--backup 選項)
numbered, t 備份檔案加上數字進行排序
existing, nil 若有數位備份檔案已經存在則使用數字,否則使用普通方式備份
simple, never 永遠使用普通方式備份

解讀:

1. -s

建立軟連結 ln -s file.txt /${dir}/file.copy

2. -f -b

-f 實際上為強行覆蓋已存在的永久連結(注意:有的ubuntu的翻譯有誤)

-b 指覆蓋前備份

3. –i

覆蓋檔案前提問

4. –S

與-s存在著本質區別。。這裡是給他起尾碼名(window裡可能叫副檔名,但linux中不是以這種方式區別檔案)
 

實戰:

1. 現在我需要配置jdk,tomcat,並且有多個節點,還有一些設定檔在不同的目錄下。有時候,會用到一些遠端工具集。 工作時間有點長,慢慢發現很多時間在切換目錄上,於是,我把所有的捷徑,全部集中的幾個檔案夾,並且進行歸類,然後某些簡單操作用遠程或者共用,在win下操作.

2. 建立軟連結

$ln –s file.txt /${dir}/

3. 可以通過尾碼名提示該檔案是軟串連

$ln –s file.txt /${dir}/file -v -S.url

-v 提示檔案變化, -S.url表示了file的尾碼名 -s表示是軟串連

4. 如果你總是遇到很多類似名稱,覆蓋前需要提示

$ln -f 覆蓋前不提示
$ln -i 覆蓋前提示

中文介紹

用法:ln [選項]... [-T] 目標 連結名(第一種格式) 或:ln [選項]... 目標(第二種格式) 或:ln [選項]... 目標... 目錄(第三種格式) 或:ln [選項]... -t 目錄 目標...(第四種格式)在第一種格式中,建立指定名稱且指向指定目標連結。在第二種格式中,在目前的目錄建立指向目標位置的連結。在第三、四種格式中,在指定目錄中建立指向指定目標的連結。預設建立永久連結,當使用--symbolic 時建立符號連結。當建立永久連結時每個指定的目標都必須存在。符號連結可以指向任意的位置,當連結解析正常時,將其解析為一個與其父目錄關聯的連結。長選項必須使用的參數對於短選項時也是必需使用的。   --backup[=CONTROL]為每個已存在的目標檔案建立備份檔案 -b類似--backup,但不接受任何參數 -d, -F, --directory建立指向目錄的永久連結(只適用於超級使用者) -f, --force強行刪除任何已存在的目標檔案 -i, --interactive刪除檔案前進行確認 -L, --logical將永久連結建立為符號連結引用 -n, --no-dereference如果目的地是一個連結至某目錄的符號連結,會將該符號連結當作普通檔案處理,先將該已存在的連結備份或刪除 -s, --symbolic建立符號連結而非永久連結 -S, --suffix=尾碼自行指定備份檔案的尾碼 -t, --target-directory=目錄在指定目錄中建立連結 -T, --no-target-directory將連結名稱當作普通檔案 -v, --verbose連結前先列出每個檔案的名稱   --help顯示此協助資訊並退出   --version顯示版本資訊並退出備份檔案的尾碼為"~",除非以--suffix 選項或是SIMPLE_BACKUP_SUFFIX環境變數指定。版本控制的方式可通過--backup 選項或VERSION_CONTROL 環境變數來選擇。以下是可用的變數值:使用 -s 選項會忽略 -L 和 -P。否則當源為一個符號連結(預設-P)時,會由最後指定的一個選項來控制行為。 none, off    不進行備份(即使使用了--backup 選項) numbered, t   備份檔案加上數字進行排序 existing, nil  若有數位備份檔案已經存在則使用數字,否則使用普通方式備份 simple, never  永遠使用普通方式備份

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.