2016年9月8日 星期四

【Linux】Linux command - pipe, cat, tail


pipe 指令

 | <-- 這個符號就是管道(pipe)
pipe 是分隔兩個管線命令的界定
簡單來說
pipe = 把左邊得出的結果丟到右邊去

來個簡單的例子
當我們使用 ls -la
會把目錄下的全部檔案名稱列印在 console 上

當我們只想搜尋某個檔案時
就要使用到 pipe 了
ls -la | grep "Code"

想了解 grep, 請看 【Linux】Linux command - find, grep

會做完 ls -la 後,再找出含有 "Code" 字元的檔案

來張圖就更容易明白了!


這一句意思就是:
ls -la 裡含有 Code 字元的都給朕列印出來!


cat 指令

假如我們不是只想把檔案名字列印出來,而是想把檔案內容列印出來時
就會使用到 cat 指令

cat = 把file所有內容列印到console上

假如我們的 test.php 內容是..
<?
echo "I am test.php";
echo "hihi";
echo "hihi 1";
echo "hihi 2";
echo "hihi 3";
?>

使用 cat test.php 指令時
會把整個 test.php 的內容列入在 console 上

cat 配合 pipe, grep 使用的話
 cat test.php | grep "hihi"

結果是:
echo "hihi 1";
echo "hihi 2";
echo "hihi 3";


tail 指令

以上面 test.php 來做例子
如果我們只想列印最後一行的結果在 console 上

tail = 把file最尾的指定行數列印到console上

使用 tail -n 1 test.php | grep "hihi"
意思是把 test.php 最後一行有 hihi 字元的列印出來

結果是:
echo "hihi 3";



沒有留言:

張貼留言