在我的 Ubuntu Natty 上,通常插入的所有新驱动器(例如 USB 闪存拇指驱动器)都安装在/media
.因此,在我的系统上,我可以执行以下操作:
$ mount | grep '/media'
/dev/sda6 on /media/disk1 type ext4 (rw,uhelper=hal,commit=0)
/dev/sda9 on /media/disk2 type ext4 (rw,nosuid,nodev,uhelper=udisks,commit=0)
# create proper dir
$ sudo mkdir /media/properdir
# creat symlink
$ sudo ln -s /tmp /media/
$ ls -la /media/
total 24
drwxr-xr-x 6 root root 4096 2013-04-08 16:35 .
drwxr-xr-x 22 root root 4096 2013-03-23 21:44 ..
drwxr-xr-x 36 username username 4096 2013-04-06 19:15 disk2
drwxr-xr-x 11 username username 4096 2012-04-10 12:24 disk1
drwxr-xr-x 2 root root 4096 2013-04-08 16:35 properdir
lrwxrwxrwx 1 root root 4 2013-04-08 16:35 tmp -> /tmp
...也就是说,ls
不区分“正确的”目录和驱动器的安装点。我想要的是一个工具输出可能的安装点,类似于符号链接的显示方式ls
;例子:
$ lsMOUNT -la /media/
total 24
drwxr-xr-x 6 root root 4096 2013-04-08 16:35 .
drwxr-xr-x 22 root root 4096 2013-03-23 21:44 ..
drwxr-xr-x 36 username username 4096 2013-04-06 19:15 disk2 => /dev/sda9
drwxr-xr-x 11 username username 4096 2012-04-10 12:24 disk1 => /dev/sda6
drwxr-xr-x 2 root root 4096 2013-04-08 16:35 properdir
lrwxrwxrwx 1 root root 4 2013-04-08 16:35 tmp -> /tmp
正确的人ls
有这样的选择吗?如果没有,是否有工具可以接受与 相同的命令行参数ls
,但解析潜在的安装点?
答案1
这将是一个很好的功能。你可以请 ls 的人考虑一下。 :-)
在他们这样做之前,您将必须编写自己的脚本(然后您可以别名为 ls )来检查每个输出目录是否是挂载点。对于单个目录,这可以使用命令完成mountpoint
,但对于长列表,我建议优化:从 读取挂载点/proc/mounts
,然后调用ls
(以--quoting-style=
允许您可靠地解析输出的方式设置),然后检查目录名挂载点列表中的每一行或条目。对于比赛,您只需附加您最喜欢的符号即可。