9 我收到目录或文件的路径。 哪个实用程序/ shell脚本可以可靠地给我该目录/文件所在的文件系统的UUID? 通过文件系统的UUID,我的意思是UUID=...条目,例如,blkid 我正在使用Redhat Linux。 (有人建议我应该在unix.stackexchange.com上问这个问题,所以我将其从原始的stackexchange.com中移出) linux shell block-device uuid — 林凡 source 3 有关如何获取文件系统的信息,请参见unix.stackexchange.com/questions/11311/…,然后可以运行blkid。 — muru 请注意,并非所有文件系统都具有UUID。blkid不会为您提供UUID,例如。用于NFS挂载。 — 奥利弗2015年
8 一种选择是stat+ findmnt组合: findmnt -n -o UUID $(stat -c '%m' "$path") 此处-n禁用标头,-o UUID仅打印UUID值。选项-c '%m'的stat存在仅输出MOUNTPOINT给定路径的。 — 吉米吉 source 2 不需要stat:findmnt -no uuid -T "$path" — don_crissti
3 您可以使用df查找文件的安装点,然后将结果应用于blkid到UUID。您需要(至少)以root用户身份运行blkid才能工作: FILE_OR_DIR="$PWD" blkid -s UUID -o value $( df "$FILE_OR_DIR" ) — 罗伊马 source 最好是这样-o export,因为这样可以打印表格的输出UUID=...。 — muru @muru尚不清楚我是否仅需要UUID(-o value)或UUID="value"类型表达式(-o export)。我选择了价值。 — roaima
blkid
。