特定のディレクトリ直下にあるファイルやディレクトリの数をカウントする方法を解説します。
ファイルとディレクトリを合わせてカウントする
特定のディレクトリ直下にあるファイルとディレクトリの数を合わせてカウントする方法を説明します。
lsコマンドを使用した例
ディレクトリを指定しない場合は、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# ls -1 | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# ls -1 test_dir_01/ | wc -l 5
findコマンドを使用した例
「.(ドット)」を指定することで、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# find . -mindepth 1 -maxdepth 1 | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# find ./test_dir_01/ -mindepth 1 -maxdepth 1 | wc -l 5
ファイルだけをカウントする
特定のディレクトリ直下にあるファイルだけをカウントする方法を説明します。
lsコマンドを使用した例
このコマンドについてですが、[ls -l]コマンドの結果で、先頭が[-]の行をカウントすることで、ファイルのみをカウント対象としています。(ディレクトリは先頭が[d]になります。)
ディレクトリを指定しない場合は、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# ls -l | grep ^- | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# ls -l test_dir_01/ | grep ^- | wc -l 5
findコマンドを使用した例
findコマンドにオプション「-type f」を付けることで、ファイルのみを抽出することが出来ます。
「.(ドット)」を指定することで、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# find . -mindepth 1 -maxdepth 1 -type f | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# find ./test_dir_01/ -mindepth 1 -maxdepth 1 -type f | wc -l 5
ディレクトリだけをカウントする
特定のディレクトリ直下にあるディレクトリだけをカウントする方法を説明します。
lsコマンドを使用した例
このコマンドについてですが、[ls -l]コマンドの結果で、先頭が[d]の行をカウントすることで、ディレクトリのみをカウント対象としています。
ディレクトリを指定しない場合は、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# ls -l | grep ^d | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# ls -l ./test_dir_01/ | grep ^d | wc -l 5
findコマンドを使用した例
findコマンドにオプション「-type d」を付けることで、ディレクトリのみを抽出することが出来ます。
「.(ドット)」を指定することで、カレントディレクトリが対象になります。
[root@SYUTAKUWEB01 workspace]# find . -mindepth 1 -maxdepth 1 -type d | wc -l 10
ディレクトリを指定することで、指定したディレクトリ直下が対象になります。
[root@SYUTAKUWEB01 workspace]# find ./test_dir_01/ -mindepth 1 -maxdepth 1 -type d | wc -l 5
コメント