1. 程式人生 > >Linux下如何批量建立檔案連線

Linux下如何批量建立檔案連線

首先了解一下linux系統的連線資訊,硬連結和軟連線

硬連結就是同一個檔案使用了多個別名(他們有共同的 inode)。
硬連結可由命令 link 或 ln 建立,如:
link oldfile newfile 
ln    oldfile newfile
由於硬連結是有著相同 inode 號僅檔名不同的檔案,因此,刪除一個硬連結檔案並不影響其他有相同 inode 號的檔案。硬連結不能對目錄進行建立,只可對檔案建立。

軟連結(也叫符號連結)與硬連結不同,檔案使用者資料塊中存放的內容是另一檔案的路徑名的指向。軟連結就是一個普通檔案,只是資料塊內容有點特殊。軟連結可對檔案或目錄建立。
ln -s old.file soft.link


ln -s old.dir soft.link.dir
加-s選項表示建立的是軟連結。
刪除軟連結並不影響被指向的檔案,但若被指向的原檔案被刪除,則相關軟連線就變成了死連結。

如何批量建立檔案連線

1.使用ln命令

<span style="font-size:18px;">ln -s /tmp/*.log /tmp/lnk/</span>

2.使用cp命令的引數rs
<span style="font-size:18px;">cp -rs /tmp/*.log /tmp/lnk/</span>

3.寫shell指令碼,一個比較愚蠢的方法
<span style="font-size:18px;">for FILE in /tmp/*.log;do ln -s $FILE '/tmp/lnk_'`basename $FILE`;done</span>