Linuxで実行されているすべてのプロセスに対してインデックス24を使用してファイル記述子の総数を印刷するにはどうすればよいですか?
頑張った
$ ls /proc/*/fd 2> errors.txt > stdout.txt | grep "^24" stdout.txt | wc -l
このソリューションは毎回ゼロを返します。
私は私の課題を解決するために1行のコードを書く必要があると述べました。
ベストアンサー1
使用できる
find /proc/[0-9]*/fd/ -name 24 2> /dev/null | wc -l
または使用に固執する場合ls
(これはいくつかの例安全な場合はこれを実行してください):
ls /proc/[0-9]*/fd 2>/dev/null | grep -c '^24$'
出力をファイル(> output.txt
)にリダイレクトするため、最初の試行は失敗します。つまり、grep
一致する出力がないため、一致しません。|
上記のようにパイプ()を使用したり、;
コマンド&
を区別して使用したりできます。
ls /proc/[0-9]*/fd 2> errors.txt > stdout.txt; grep "^24" stdout.txt | wc -l