私は 40 台の ubuntu マシンを備えたコンピューター ラボを管理しており、このコマンドを組み合わせて、学生のホーム ディレクトリで 100M を超えるファイルの合計ディスク使用量を見つけました。
for i in `cat ./lab-machines.txt ` ; do ssh $i "nohup find /home -size +100M -print0 | du --files0-from=- -ch | tail -1 && hostname && ls /home" ; done > lab-disk-usage.txt
ファイル「lab-machines.txt」には、コンピューターのホスト名がそれぞれ別の行に含まれています。このコマンドは、ルート ユーザーのラボ マシンへのパスワードなしのログインで構成されたサーバーから実行されます。ファイル lab-disk-usage.txt の出力には、すべてのマシンについて次のようなものが含まれています (括弧内にコメントを挿入しました)。
69G total
hostname
student-username (changes)
admin-username (always the same)
lost+found (always the same)
各マシンの出力を次のようにしたいと思います。
69G ホスト名 学生ユーザー名
これを時間内に完了するには、テキスト フィルタリングに十分に慣れていません。手伝ってくれますか?