中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中如何使用ln命令在文件之間建立連接

發布時間:2021-09-26 15:38:25 來源:億速云 閱讀:133 作者:iii 欄目:系統運維

這篇文章主要介紹“Linux中如何使用ln命令在文件之間建立連接”,在日常操作中,相信很多人在Linux中如何使用ln命令在文件之間建立連接問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Linux中如何使用ln命令在文件之間建立連接”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

在Unix世界里有兩個'link'(連接)概念,一般稱之為硬連接和軟連接。一個硬連 接僅僅是一個文件名。(一個文件可以有好幾個文件名,只有將最后一個文件名從 磁盤上刪除,才能把這個文件刪掉。文件名的個數是由ls(1)來確定的。所有的文件 名都處于同一個狀態,也就沒有什么lq源名字rq 之說。通常文件系統里的一個 文件的所有名字包含著一樣的數據信息,不過這樣也不是必需的。)一個軟連接 (或符號連接)是完全不同的:它是一個包含了路徑信息的小小的指定文件。因此, 軟連接可以指向不同文件系統里的文件(比如由NFS裝載的不同機器文件系統上的文 件),甚至可以指向一個不一定確實存在的文件。在軟連接文件被訪問(系統調用 open(2) 或stat(2))的時候,操作系統用該文件所包含的路徑替換該文件的訪問介 入點,從而實現對所指文件的訪問。(用命令rm(1)和unlink(2)可以刪除連接,但 不是刪除該文件所指向的文件。系統指定調用lstat(2)和readlink(2) 來讀取連接 文件與其所指文件的狀態。到底是對軟連接文件操作,還是對被指向文件操作,由 于不同操作系統件存在不同的系統調用,而存在著差異。)

ln 在文件間產生連接。缺省時,產生硬連接,有-s選項,則產生符號(軟)連接。

如果僅僅只給出一個文件名,那么ln將在當前目錄里產生這個文件的連接, 也就是說,以該文件(的最后一個)名稱等同的名字在當前目錄里產生一個連接 (GNU范圍內); 如果最后一個參數是一個已存在的目錄名, ln 將在那個目錄里給每一個源文件用以與源文件相同的文件名產生連接, (不同情況見以下--no-dereference的描述); 如果只給出兩個文件名,ln將產生源文件的連接; 如果最后一個參數不是一個目錄名或多于兩個文件名,則報錯。

缺省時,ln不刪除已存在的文件或符號連接。 (因此,它可以被用來鎖定目標文件,即當dest已經不存在時) 但選項-f可以強制執行。

在已存在的實現中,只有超級用戶才能建立目錄的硬連接。 POSIX 禁止系統調用link(2)和ln建立目錄的硬連接 (但是允許在不同的文件系統間建立硬連接)。

使用方式 : ln [options] source dist,其中 option 的格式為 :
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}][--help] [--version] [--]

說明 : Linux/Unix 檔案系統中,有所謂的連結(link),我們可以將其視為檔案的別名,而連結又可分為兩種 : 硬連結(hard link)與軟連結(symbolic link),硬連結的意思是一個檔案可以有多個名稱,而軟連結的方式則是產生一個特殊的檔案,該檔案的內容是指向另一個檔案的位置。硬連結是存在同一個檔案系統中,而軟連結卻可以跨越不同的檔案系統。
ln source dist 是產生一個連結(dist)到 source,至于使用硬連結或軟鏈結則由參數決定。
不論是硬連結或軟鏈結都不會將原本的檔案復制一份,只會占用非常少量的磁碟空間。

-f : 鏈結時先將與 dist 同檔名的檔案刪除
-d : 允許系統管理者硬鏈結自己的目錄
-i : 在刪除與 dist 同檔名的檔案時先進行詢問
-n : 在進行軟連結時,將 dist 視為一般的檔案
-s : 進行軟鏈結(symbolic link)
-v : 在連結之前顯示其檔名
-b : 將在鏈結時會被覆寫或刪除的檔案進行備份
-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾
-V METHOD : 指定備份的方式
--help : 顯示輔助說明
--version : 顯示版本

注意:
如果不使用 -s 標志,就不能在文件系統之間鏈接文件。
如果 TargetDirectory 已經是鏈接到目錄上的一個符號鏈接,那么 ln 命令將現有的目標視為文件。這意味著,類似于 ln -fs somepath/lname symdir 的命令不會遵循現有的 symdir 符號鏈接,作為代替,它會創建一個從 somepath/lname 到 symdir 的新的符號鏈接。

退出狀態
此命令返回以下的退出值:
0 所有指定的文件都成功鏈接上了。
>0 出現一次錯誤。

例:

代碼如下:


[root@localhost test_ln]# ln -s /home/zhangy/heartbeat ./   #在當前目錄下,建立heartbeat的軟連接
[root@localhost test_ln]# ln -s /home/zhangy/test ./        #建立目錄的軟件接
[root@localhost test_ln]# ln /home/zhangy/tee.txt ./        #建立硬連接
[root@localhost test_ln]# ll      
總計 4
lrwxrwxrwx 1 root root 22 05-11 11:04 heartbeat -> /home/zhangy/heartbeat       #文件軟件接
-rw-r--r-- 2 root root  0 2010-11-24 tee.txt                                  #文件硬連接
lrwxrwxrwx 1 root root 17 05-11 11:04 test -> /home/zhangy/test                 #目錄軟件接



1.為了創建到一個文件的另一個鏈接(別名),請輸入:

代碼如下:


ln -f chap1 intro


這會將 chap1 鏈接到新的名稱, intro。如果 intro 不存在,那么會創建該文件名。如果 intro 已經存在了,那么這個文件會被替換為指向 chap1的一個鏈接。然后 chap1 和 intro 文件名會指向同一個文件。對其中任何一個的更改都會出現在另一個中。如果一個文件名被 rm 命令刪除,那么該文件并沒有完全被刪除,因為它仍然以其它的名字存在。

2.為了將文件鏈接為另一個目錄中的相同名字,請輸入:

代碼如下:


ln  index manual


這會將 index 鏈接到新的名稱,manual/index。
注意:在示例 1 中的 intro 是一個文件的名稱;在示例 2 中的 manual 是一個已經存在的目錄。

3.為了將幾個文件鏈接為另一個目錄中的名稱,請輸入:

代碼如下:


ln chap2 jim/chap3 /home/manual


這會將 chap2 鏈接到新的名稱 /home/manual/chap2;將 jim/chap3 鏈接到新的名稱 /home/manual/chap3。

4.如果想要在 ln 命令中使用模式匹配字符,請輸入:

代碼如下:


ln  manual/* .


這會將 manual 目錄中的所有文件鏈接到當前目錄中, . (點),給他們在 manual 目錄中同樣的名稱。

注意: 必須在星號和句點之間輸入一個空格。

5.為了創建一個符號鏈接,輸入:

代碼如下:


ln -s /tmp/toc toc


這會在當前的目錄中創建符號鏈接 toc。 toc 文件指向 /tmp/toc 文件。如果 /tmp/toc 文件已經存在了,那么 cat toc 命令可以列出其內容。

6.如果想要在不指明 TargetFile 參數的情況下得到相同的結果,請輸入:

代碼如下:


ln -s /tmp/toc

到此,關于“Linux中如何使用ln命令在文件之間建立連接”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泸水县| 措美县| 尼木县| 平原县| 苏尼特右旗| 博兴县| 盐亭县| 桑植县| 云和县| 北辰区| 灵寿县| 高安市| 临城县| 凭祥市| 喀喇沁旗| 千阳县| 肇源县| 马尔康县| 临海市| 增城市| 玛曲县| 江华| 呼伦贝尔市| 米易县| 江孜县| 安康市| 文安县| 柞水县| 佛山市| 津市市| 闽侯县| 武宁县| 沙湾县| 凭祥市| 长宁区| 天气| 攀枝花市| 郓城县| 隆子县| 鄂托克旗| 合川市|