有時候要對某個資料夾下面的所有檔案做同樣的處理,比如對每個檔案統計行數,這時用遍歷檔案的方式就很簡單了。
$ for i in `ls`;do wc -l $i;done
55552 f123.txt
55819 f124.txt
56118 f125.txt
56404 f126.txt
56633 f127.txt
56842 f128.txt
這裡使用了for...do...done迴圈,注意迴圈語句寫在一行上面時,要用 ; 分隔開來。
ls要用反引號擴起來。
這樣就可以對ls命令列出的所有檔案執行wc -l 統計行數,簡直就是居家必備的良藥。
同樣的,可以批量對檔案進行更名,比如給每個檔案增加字尾.bk,命令如下:
$ for i in `ls f*`;do mv $i $i".bk";done
shell 遍歷資料夾下所有檔案
linux 下有tree命令可以檢視指定資料夾下的所有檔案 需要安裝tree,ubuntu下sudo apt get install tree 要實現這樣的功能,可以有多種實現方式,指令碼語言就是一種方便快捷的方式,python,shell都可以很容易實現。最近在學習makefile編寫,其中有很多...
shell遍歷目錄下所有檔案
filelist ls home work file for file in filelist do echo file done 一定要切記filelist 後邊的那個引號不是單引號,而是tab鍵上邊的那個鍵,或者說是1左邊的那個鍵。否則的話不起作用。唉,自己在上吃虧了好長時間。汗!如果ls後面的...
shell遍歷hdfs上的檔案目錄
背景 需要批量把hdfs上某個目錄中的所有以.pending 結尾的檔案,去掉.pending字尾。主要原因是建立的hive外表無法讀取.tmp或.pending的檔案,所以需要去掉字尾。hdfs上檔案的結構是根目錄 data test flink ttengine predict 下有dt 201...