我管理一个有 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”在单独的一行中包含计算机的主机名。该命令从一个配置了无密码登录的服务器运行到 root 用户的实验室机器。文件 lab-disk-usage.txt 中的输出包含每台机器的类似内容(我在括号中插入了注释):
69G total
hostname
student-username (changes)
admin-username (always the same)
lost+found (always the same)
我希望每台机器的输出看起来像这样:
69G 主机名 学生-用户名
我对文本过滤不够熟悉,无法及时完成。你能帮我吗?