歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> 在bash shell中使用getfattr查看文件擴展屬性

在bash shell中使用getfattr查看文件擴展屬性

日期:2017/3/1 12:21:13   编辑:SHELL編程
getfattr用法 用於獲取文件擴展屬性,返回一系列鍵值對,參考Linux Man Page。 常用OPTIONS
-n name, --name=name
Dump the value of the named extended attribute extended attribute.
-d, --dump
Dump the values of all extended attributes associated with pathname.
-e en, --encoding=en
Encode values after retrieving them. Valid values of en are "text", "hex", and "base64". Values encoded as text strings are enclosed in double quotes ("), while strings encoded as hexidecimal and base64 are prefixed with 0x and 0s, respectively.
-h, --no-dereference
Do not dereference symlinks. Instead of the file a symlink refers to, the symlink itself is examined. Unless doing a logical (-L) traversal, do not traverse symlinks to directories.
-m pattern, --match=pattern
Only include attributes with names matching the regular expression pattern. The default value for pattern is "^user\\.", which includes all the attributes in the user namespace. Specify "-" for including all attributes. Refer to attr(5) for a more detailed discussion of namespaces.
--absolute-names
Do not strip leading slash characters ('/'). The default behaviour is to strip leading slash characters.
--only-values
Dump out the extended attribute value(s) only.
-R, --recursive
List the attributes of all files and directories recursively.
-L, --logical
Logical walk, follow symbolic links to directories. The default behaviour is to follow symbolic link arguments unless --no-dereference is given, and to skip symbolic links encountered in subdirectories. Only effective in combination with -R.
-P, --physical
Physical walk, do not follow symbolic links to directories. This also skips symbolic link arguments. Only effective in combination with -R.
--version
Print the version of getfattr and exit.
--help
Print help explaining the command line options.

使用舉例 查看所有擴展屬性的命令: getfattr -m . -d -e hex --absolute-names $(vs_quick_lookup.sh vm-disk-1.qcow2 | grep $(hostname) | awk -F ":" '{print $2}') 結果: # file: /sf/data/vs/local/V1gACv-8aPk-GDhe-nNnx-6uoD-isPj-ia9fSO/c93f1a03-ca0a-41cf-bca2-f723b35122ed/images/cluster/ljr.vm/vm-disk-1.qcow2 trusted.afr.vs_vol_rep2-client-10=0x000000000000000000000000 trusted.afr.vs_vol_rep2-client-11=0x000000000000000000000000 trusted.gfid=0x4751bfcc6ad6406d8e00a973d45a9d4e user.glusterfs.bd=0x6c76323a313138353131333730323400 user.glusterfs.wcache=0x0000000000000000 選項說明: -m . 匹配所有格式的擴展屬性,默認的是user.xxx,即"^user\."。 -d -e hex 使用16進制編碼dump出對應擴展屬性的值 --absolute-names 不過濾路徑分隔符('/') 查看指定的擴展屬性 getfattr -n 'trusted.gfid' -d -e hex --absolute-names $(vs_quick_lookup.sh vm-disk-1.qcow2 | grep $(hostname) | awk -F ":" '{print $2}' ) 結果: # file: /sf/data/vs/local/V1gACv-8aPk-GDhe-nNnx-6uoD-isPj-ia9fSO/c93f1a03-ca0a-41cf-bca2-f723b35122ed/images/cluster/ljr.vm/vm-disk-1.qcow2 trusted.gfid=0x4751bfcc6ad6406d8e00a973d45a9d4e 選項說明: -n 指定擴展屬性的名稱
Copyright © Linux教程網 All Rights Reserved