如何确定两个相同列表中唯一的附加文件?

如何确定两个相同列表中唯一的附加文件?

我已经列出了两次设备文件夹,一次没有将 SD 卡插入插槽,一次插入后,系统会自动在设备文件夹中添加一个文件。

$ ls /dev | wc -l
205
$ ls /dev | wc -l
206

我可以将每个列表放入一个单独的文件中: ls /dev > foo.但此时如何确定添加的设备文件呢?

答案1

您可以在添加设备之前运行此命令以将初始列表存储在文件中:

ls /dev >~/a

添加设备后:

ls /dev | diff -u ~/a -

这应该向您显示两个文件列表的不同之处。diff 显示两个文本文件之间的差异,flag-u更改其输出格式:添加的行将以符号为前缀+。例如,如果您得到以下输出(我省略了 diff 标头):

 sdc
 sdd
 sde
+sdf
 sg0
 sg1
 sg2

那么这意味着创建的新设备是/dev/sdf

然后您可以删除临时文件~/a

获取您正在寻找的信息的另一种方法是tail -f /var/log/messages:您应该看到提及新设备的出现和消失的内核消息。

相关内容