當前位置:首頁 » 知網查重 » linux鏈接目錄

linux鏈接目錄

發布時間: 2021-03-02 10:58:42

❶ linux中,什麼是連結檔,鏈接,鏈接目錄

linux硬鏈接與軟鏈接
1.Linux鏈接概念
Linux鏈接分兩種,一種被稱為硬鏈接(Hard Link),另一種被稱為符號鏈接(Symbolic Link)。默認情況下,ln命令產生硬鏈接。
【硬連接】
硬連接指通過索引節點來進行連接。在Linux的文件系統中,保存在磁碟分區中的文件不管是什麼類型都給它分配一個編號,稱為索引節點號(Inode Index)。在Linux中,多個文件名指向同一索引節點是存在的。一般這種連接就是硬連接。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止「誤刪」的功能。其原因如上所述,因為對應該目錄的索引節點有一個以上的連接。只刪除一個連接並不影響索引節點本身和其它的連接,只有當最後一個連接被刪除後,文件的數據塊及目錄的連接才會被釋放。也就是說,文件真正刪除的條件是與之相關的所有硬連接文件均被刪除。
硬連接的2個限制:
不允許給目錄創建硬鏈接
只有在同一文件系統中的文件之間才能創建鏈接。 即不同硬碟分區上的兩個文件之間不能夠建立硬鏈接。這是因為硬鏈接是通過結點指向原始文件的,而文件的i-結點在不同的文件系統中可能會不同。

【軟連接】
另外一種連接稱之為符號連接(Symbolic Link),也叫軟連接。軟鏈接文件有類似於Windows的快捷方式。它實際上是一個特殊的文件。在符號連接中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。
這就允許符號鏈接(經常簡寫為symlinks)指向位於其他分區、甚至是其他網路硬碟上的某個文件

2.通過實驗加深理解
[oracle@Linux]$ touch f1 #創建一個測試文件f1
[oracle@Linux]$ ln f1 f2 #創建f1的一個硬連接文件f2
[oracle@Linux]$ ln -s f1 f3 #創建f1的一個符號連接文件f3
[oracle@Linux]$ ls -li # -i參數顯示文件的inode節點信息
total 0
9797648 -rw-r--r-- 2 oracle oinstall 0 Apr 21 08:11 f1
9797648 -rw-r--r-- 2 oracle oinstall 0 Apr 21 08:11 f2
9797649 lrwxrwxrwx 1 oracle oinstall 2 Apr 21 08:11 f3 -> f1
從上面的結果中可以看出,硬連接文件f2與原文件f1的inode節點相同,均為9797648,然而符號連接文件的inode節點不同。
[oracle@Linux]$ echo "I am f1 file" >>f1
[oracle@Linux]$ cat f1
I am f1 file
[oracle@Linux]$ cat f2
I am f1 file
[oracle@Linux]$ cat f3
I am f1 file
[oracle@Linux]$ rm -f f1
[oracle@Linux]$ cat f2
I am f1 file
[oracle@Linux]$ cat f3
cat: f3: No such file or directory
通過上面的測試可以看出:當刪除原始文件f1後,硬連接f2不受影響,但是符號連接f3文件無效
3.總結
依此您可以做一些相關的測試,可以得到以下全部結論:
1).刪除符號連接f3,對f1,f2無影響;
2).刪除硬連接f2,對f1,f3也無影響;
3).刪除原文件f1,對硬連接f2沒有影響,導致符號連接f3失效;
4).同時刪除原文件f1,硬連接f2,整個文件會真正的被刪除。

❷ Linux鏈接多個文件到一個目錄

連接目錄和通配符都可以。假定有一個目標是/tmp/dst

ln -s *.120 /tmp/dst
如果是數據在所在的目錄是/src下面所有的要連接過去
ln -s /src/* /tmp/dst

❸ linux下軟鏈接在哪個文件夾

linux下查看軟連接的信息使用命令
ls -L
最後一列就是原始地址

ls命令是linux下最常用的命令之一,ls跟dos下的dir命令是一樣的都是用來列出目錄下的文件,下面我們就來一起看看ls的用法

英文全名:List即列表的意思,當我們學習某種東西的時候要做到知其所以然,當你知道了這個東西大概是個什麼了以後你的思維就會聯想到很多的東西學習的就會很快。

1. ls -a 列出文件下所有的文件,包括以「.「開頭的隱藏文件(linux下文件隱藏文件是以.開頭的,如果存在..代表存在著父目錄)。

2. ls -l 列出文件的詳細信息,如創建者,創建時間,文件的讀寫許可權列表等等。

3. ls -F 在每一個文件的末尾加上一個字元說明該文件的類型。"@"表示符號鏈接、"|"表示FIFOS、"/"表示目錄、"="表示套接字。

4. ls -s 在每個文件的後面列印出文件的大小。 size(大小)

5. ls -t 按時間進行文件的排序 Time(時間)

6. ls -A 列出除了"."和".."以外的文件。

7. ls -R 將目錄下所有的子目錄的文件都列出來,相當於我們編程中的「遞歸」實現

8. ls -L 列出文件的鏈接名。Link(鏈接)

9. ls -S 以文件的大小進行排序

❹ linux怎麼將一個文件夾鏈接到另一個文件夾上

ln -s bbb的文件目錄 ccc的文件目錄

In的功能是為某一個文件在另外一個位置建立一個同步的鏈接,命令最內常用的參數是容-s,具體用法是:

ln -s 源文件 目標文件

-s 是 symbolic的意思。

ln的鏈接有軟鏈接和硬鏈接兩種。

軟鏈接就是ln -s ** **,只會在選定的位置上生成一個文件的鏡像,不會佔用磁碟空間。

硬鏈接ln
** **,沒有參數-s,在選定的位置上生成一個和源文件大小相同的文件。

無論是軟鏈接還是硬鏈接,文件都保持同步變化。軟鏈接是可以跨分區的,但是硬鏈接只能在同一分區內。

(4)linux鏈接目錄擴展閱讀:

1、目錄不能建立硬鏈接,但可以建立軟鏈接。

ln-s
test_chk test_chk_ln

2、正確的刪除方式(刪除軟鏈接,但不刪除實際數據):

rm -rf ./test_chk_ln

3、錯誤的刪除方式:

rm -rf ./test_chk_ln/ (這樣就會把原來test_chk下的內容刪除)

4、用ls查看一個目錄時,發現有的文件後面有一個@的符號,那就是一個用ln命令生成的文件。用ls
-l命令去查看,就可以看到顯示的link的路徑。

❺ linux cd 打開鏈接文件夾

cd 文件名 是進入該文件

❻ Linux命令:搜索系統中的所有鏈接文件,並復制到主目錄中的link目錄中。

find
/
-type
l
-print
>>out.txt這是查看所有的鏈接文件的,運行上面的命令後,可以查看#cat
out.txt,就知道那些內是鏈接文件了容,也可以用#ls
-l
加out.txt鏈接名來測試一下,至於如何復制到主目錄中的link目錄中,我就不太清楚了,不過你可以試試這個#find
/
-type
l
-print
-ok
cp
{}
\;
/link
我回去試試看,再說!!

❼ linux如何打開鏈接文件

鏈接:一種在共享文件和訪問它的用戶的若干目錄項之間建立聯系的一種方法。
Linux中包括兩種鏈接:硬鏈接(Hard Link)和軟鏈接(Soft Link),軟鏈接又稱為符號鏈接(Symbolic link)。
我們首先來了解一下幾個名詞:
索引節點(inode)
要了解鏈接,我們首先得了解一個概念,叫索引節點(inode)。在Linux系統中,內核為每一個新創建的文件分配一個Inode(索引結點),每個文件都有一個惟一的inode號,我們可以將inode簡單理解成一個指針,它永遠指向本文件的具體存儲位置。文件屬性保存在索引結點里,在訪問文件時,索引結點被復制到內存在,從而實現文件的快速訪問。系統是通過索引節點(而不是文件名)來定位每一個文件。
硬鏈接(Hard Link)
硬鏈接說白了是一個指針,指向文件索引節點,系統並不為它重新分配inode。可以用:ln命令來建立硬鏈接。
引用
ln [options] existingfile newfile
ln [options] existingfile-list directory

用法:
第一種為」existingfile」創建硬鏈接,文件名為」newfile」。
第二種在」directory」目錄中,為」 existingfile-list」中包含的所有文件創建一個同名的硬鏈接。
常用可選[options]:-f 無論」newfile」存在與否,都創建鏈接。-n 如果」newfile」已存在,就不創建鏈接。
軟鏈接(Soft Link)
軟鏈接又叫符號鏈接,這個文件包含了另一個文件的路徑名。可以是任意文件或目錄,可以鏈接不同文件系統的文件。和win下的快捷方式差不多。
可以用:ln -s 命令來建立軟鏈接。
引用
ln -s existingfile newfile
ln -s existingfile-list directory

下面我們用一個實例來說明硬鏈接和軟鏈接。
現在目錄下有兩個文件,一個名為file1,一個名為file2。
引用
$ ls –il
1052671 -rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:46 file1
1052670 -rw-r--r-- 1 Leanx Leanx 0 2007-03-29 13:46 file2

首先先做一個file1的硬鏈接。
引用
$ ln file1 file1hard
$ls –il
1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:46 file1
1052670 -rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:46 file12
1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:46 file1hard

這里我們注意在創建鏈接前,file1顯示的鏈接數目為1,創建鏈接後
1.file1和file1hard的鏈接數目都變為2。
2.file1和file1的inode號是一樣的,都是1052671。
3.file1和file1hard顯示的文件大小也是一樣,都是0B。
可見進行了ln命令的操作結果:file1和file1hard是同一個文件的兩個名字,它們具有同樣的索引節點號和文件屬性,建立文件file1的硬鏈接,就是為 file1的文件索引節點在當前目錄上建立一個新指針。你可以刪除其中任何一個,如rm file1,每次只會刪除一個指針,鏈接數同時減一,只有將所有指向文件內容的指針,也即鏈接數減為0時,內核才會把文件內容從磁碟上刪除。
盡管硬鏈接節省空間,也是Linux系統整合文件系統的傳統方式,但是存在一些不足之處:
1.不允許給目錄創建硬鏈接。
2.不可以在不同文件系統的文件間建立鏈接。
接著我們做一個指向file2的軟鏈接,軟鏈接克服了硬鏈接的不足,沒有任何文件系統的限制,任何用戶可以創建指向目錄的符號鏈接。因而現在更為廣泛使用,它具有更大的靈活性,甚至可以跨越不同機器、不同網路對文件進行鏈接。
引用
$ ln -s file2 file2soft
$ ls –il
總用量 0
1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:34 file1
1052670 -rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:35 file2
1053313 lrwxrwxrwx 1 Leanx Leanx 5 2010-03-29 13:45 file2soft -> file2
1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:34 file1hard

從上面鏈接後的結果可以看出來軟鏈接與硬鏈接,區別不僅僅是在概念上,在實現上也是完全不同的。
區別:
1.硬鏈接原文件/鏈接文件公用一個inode號,說明他們是同一個文件,而軟鏈接原文件/鏈接文件擁有不同的inode號,表明他們是兩個不同的文件;
2.在文件屬性上軟鏈接明確寫出了是鏈接文件,而硬鏈接沒有寫出來,因為在本質上硬鏈接文件和原文件是完全平等關系;
3.鏈接數目是不一樣的,軟鏈接的鏈接數目不會增加;
4.文件大小是不一樣的,硬鏈接文件顯示的大小是跟原文件是一樣的。而這里軟鏈接顯示的大小與原文件就不同了,file2大小是0B,而file2soft是5B。
總之,建立軟鏈接就是建立了一個新文件。當訪問鏈接文件時,系統就會發現他是個鏈接文件,它讀取鏈接文件找到真正要訪問的文件。
當然軟鏈接也有硬鏈接沒有的缺點,因為鏈接文件包含有原文件的路徑信息,所以當原文件從一個目錄下移到其他目錄中,再訪問鏈接文件,系統就找不到了,而硬鏈接就沒有這個缺陷,你想怎麼移就怎麼移;還有它要系統分配額外的空間用於建立新的索引節點和保存原文件的路徑。

❽ linux怎麼將硬鏈接指向目錄

首先linux不能將硬鏈接指向目錄,硬連接自然你要先考慮軟連接跟硬連接區別,軟連接就相當於我們win中的快捷方式即如果你軟連接一個目錄只是一個目錄的快捷方式到指定位置,操作系統找這個快捷方式會直接找到真實目錄下的文件。但是硬連接的話,相當於鏡像的方式,你創建一個目錄的硬連接之後,操作系統需要把這個目錄下所有的文件都要做一次硬連接(復制一份過去),這樣操作系統在訪問這個鏈接的時候要不斷去遍歷,大大增加復雜度,而且很容易進入死循環。現在linux沒有很好支持這個 所以 不支持。

❾ linux下,如何自動link目錄

#!/bin/bash

#new一開始就是個symboliclink,不能是空目錄
#這個腳本在「同文件夾」下執行,可以放在後台執行

#符號鏈接名回:new
target=new

whiletrue
do
#每秒鍾檢查答一次
sleep1
#如果符號鏈接不存在,就什麼都不做
[!-h$target]&&continue
#找一個最新目錄
newdir=$(find.-typed-newer$target|tail-1)
#如果找到,更新符號鏈接
[-d"$newdir"]&&ln-nsf$newdir$target
done

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731