0

「.」で始まる隠しファイルを含む、ホームディレクトリ内のファイルの数を表示するパイプを使用して UNIX コマンドを作成しようとしています。

これまでのところ、私は持っています:

ls -a .* | wc -l 整数が返されます

私のコマンドは正しいですか?

4

4 に答える 4

2

現在のディレクトリにいる間:

ls -1 | wc -l

またはフル パスを指定します。

ls -1 /path/to/dir | wc -l

- のキーは でlsはないことに注意してくださいl。それは1- 「隠し」ファイル (で始まるファイル) をスキップします.。それらを含める場合は、次のようにします。

ls -1a /path/to/dir | wc -l

-ただし、.(現在のディレクトリ ポインタ) と..(親ディレクトリ ポインタ) が含まれるため、結果番号から 2 を減算する必要があることに注意してください。

于 2013-09-17T07:13:15.327 に答える
0

より多くのパイプを使用した YA 非再帰コマンド:

ls -la | awk '{ print $1 }' | grep -v total | grep -v d | wc -l

最良の非再帰 - 上記の同僚と同様ですが、警告を避けるために、型オプションの前に maxdepth を入れてください:

find ~ -maxdepth 1 -type f | wc -l

再帰的:

find ~ -type f | wc -l
于 2013-09-17T09:21:49.363 に答える