shell 指令備忘
shell 指令
1. locate
locate tmp | more
尋找檔名有 tmp 的檔案.
如果跑出來一大堆的結果, 那可以使用 more 來將輸出的東西分頁暫停.
2. find
find . -name "*.tmp"
尋找目前目錄及其子目錄, 副檔名為 tmp 的檔案.
find . -name "*.tmp" -exec rm {} \;
同上, 但找到後執行刪除動作.
英文句點代表現行目錄, 當然也可以改成其他的目錄.
3. grep
尋找的是檔案內容是否含有某些字串.
grep Linux *
找目前目錄(不含子目錄)所有含有 Linux 字串的檔案
grep -r Linux *
同上, 但會連子目錄也去找
grep & locate 組合使用
locate tmp | grep Linux 只找含有 Linux 字串的 tmp 檔案.
locate tmp | grep doc 同理, 要找 tmp 的相關說明檔時, 就可以這樣使用.
locate tmp | grep doc | more 這樣也行!
4. > 及 >>
locate tmp > tmp.lst 本來是在螢幕顯示的內容, 現在被導向進 tmp.lst 這個檔案內了.
locate tmp >> tmp.lst 兩個 >> 不會去除原來檔案的內容, 而是附加上去.
> tmp.lst 把一個檔案的內容清掉.
5. ln (link)
ln -s orig.txt link.txt 將原存在的 orig.txt 建一個連結檔 link.txt。
有如 Windows 系統中的捷徑 (shortcut) 一樣.
不加 -s 的話, 則是硬連結(hard link), 除非找出他的 inode (ls -i), 不然,
1. locate
locate tmp | more
尋找檔名有 tmp 的檔案.
如果跑出來一大堆的結果, 那可以使用 more 來將輸出的東西分頁暫停.
2. find
find . -name "*.tmp"
尋找目前目錄及其子目錄, 副檔名為 tmp 的檔案.
find . -name "*.tmp" -exec rm {} \;
同上, 但找到後執行刪除動作.
英文句點代表現行目錄, 當然也可以改成其他的目錄.
3. grep
尋找的是檔案內容是否含有某些字串.
grep Linux *
找目前目錄(不含子目錄)所有含有 Linux 字串的檔案
grep -r Linux *
同上, 但會連子目錄也去找
grep & locate 組合使用
locate tmp | grep Linux 只找含有 Linux 字串的 tmp 檔案.
locate tmp | grep doc 同理, 要找 tmp 的相關說明檔時, 就可以這樣使用.
locate tmp | grep doc | more 這樣也行!
4. > 及 >>
locate tmp > tmp.lst 本來是在螢幕顯示的內容, 現在被導向進 tmp.lst 這個檔案內了.
locate tmp >> tmp.lst 兩個 >> 不會去除原來檔案的內容, 而是附加上去.
> tmp.lst 把一個檔案的內容清掉.
5. ln (link)
ln -s orig.txt link.txt 將原存在的 orig.txt 建一個連結檔 link.txt。
有如 Windows 系統中的捷徑 (shortcut) 一樣.
不加 -s 的話, 則是硬連結(hard link), 除非找出他的 inode (ls -i), 不然,
無法分出誰是分身, 誰是本尊.
請千萬注意, 原始檔(orig.txt)在前面, 連結檔(link.txt)在後面.
6. 讀取檔的每一行內容並輸出
cat file(待讀取的檔) | while read line
do
echo $line
done
請千萬注意, 原始檔(orig.txt)在前面, 連結檔(link.txt)在後面.
6. 讀取檔的每一行內容並輸出
cat file(待讀取的檔) | while read line
do
echo $line
done
留言
張貼留言