極客君最近做專案,剛好遇到需要統計一些sql檔案數量的問題,用到一些實用的shell命令,記錄下來,以後萬一還能用上呢?

如果在終端不開啟檔案看到一共多少行,則可以使用wc命令來實現:

wc -l [filename]

例如我有一個MySQL配置檔案my.cnf,其內容如下。

[mysqld]
sql_mode = NO_ENGINE_SUBSTITUTION
max_allowed_packet = 10G
wait_timeout = 600010
innodb_buffer_pool_size =64MB

執行”wc -l my.cnf“的輸出如下,開頭數字就是檔案內容的總行數。

 5 my.cnf

如果想統計某個資料夾中檔案個數,命令如下所示。

ls -l ./| grep "^-" | wc -l

統計某個資料夾中目錄個數,命令則為:

ls -l ./| grep "^d"|wc -l

如果想遞迴子檔案,也就是說子目錄裡面的檔案們,則需要增加一個“R”引數,命令如下所示。

ls -lR | grep "^-" | wc -l

同樣的,如果是想遞迴統計子目錄的個數,則命令為:

ls -lR ./| grep "^d"|wc -l