1. 程式人生 > >檔案系統的擴充套件屬性:xattr命令

檔案系統的擴充套件屬性:xattr命令

在 Mac OS X 下的 hfs+ 檔案系統上,檔案經常會被附加上 Mac 專有的擴充套件屬性。比如

$ ls -l
total 0
[email protected] 1 daniel  staff  0 16 jul 19:28 1.txt
-rw-r--r--  1 daniel  staff  0 16 jul 19:28 2.txt

會有 @ 標誌。這個屬性是使用者在 Finder 裡對檔案進行任意操作時就會附加上的。比如右鍵檢視 Get Info,然後在 spotlight commands 裡寫上幾個字再刪掉,此時,該檔案就會附帶有 @ 屬性。如果想手動去除掉檔案的 @ 屬性,可以使用命令 xattr。例如

$ xattr -l 1.txt
com.apple.metadata:kmditemfindercomment
$ xattr -d com.apple.metadata:kmditemfindercomment 1.txt
$ xattr -l 1.txt
$ ls -al 1.txt

此時就沒有特殊屬性了。

網上資料:命令xattr詳解
usage: xattr [-l] [-r] [-v] [-x] file [file ...]
xattr -p [-l] [-r] [-v] [-x] attr_name file [file ...]
xattr -w [-r] [-v] [-x] attr_name attr_value file [file ...]
xattr -d [-r] [-v] attr_name file [file ...]

The first form lists the names of all xattrs on the given file(s).
The second form (-p) prints the value of the xattr attr_name.
The third form (-w) sets the value of the xattr attr_name to the string attr_value.
The fourth form (-d) deletes the xattr attr_name.

options:
-h: print this help
-r: act recursively
-l: print long format (attr_name: attr_value and hex output has offsets and
ascii representation)
-v: also print filename (automatic with -r and with multiple files)
-x: attr_value is represented as a hex string for input and output
舉例:1:給檔案加上@的擴充套件屬性
首先查詢到需要新增的屬性以及屬性的值,它們是成對出現的,比如文字編碼com.apple.TextEncoding: utf-8;
可以使用xattr -l newfile2來檢視。然後就是給檔案加上擴充套件屬性,使用命令:xattr -w 屬性名 屬性值 檔名 。比如給檔案加上字元utf-8編碼 :xattr -w com.apple.TextEncoding utf-8 newfile3
再檢視一下檔案,已經改變了。
2:去掉檔案的擴充套件屬性
首先要查詢到檔案已經有的擴充套件屬性,使用xattr -l 檔名 來檢視,然後使用命令 xattr -d 屬性名 檔名,就可以去掉了,比如去掉檔案的文字編碼:xattr -d com.apple.TextEncoding newfile3
這個命令的內容很少,可以使用xattr -h命令來檢視完整的內容。

相關推薦

檔案系統擴充套件屬性xattr命令

在 Mac OS X 下的 hfs+ 檔案系統上,檔案經常會被附加上 Mac 專有的擴充套件屬性。比如 $ ls -l total 0 [email protected] 1 daniel staff 0 16 jul 19:28 1.txt -rw-r--

xattr檔案系統擴充套件屬性

簡介: xattr擴充套件,允許操作 '檔案系統的擴充套件屬性' 安裝: 1.為了使用xattr,需要安裝 'libattr'。 2.切記: xattr擴充套件函式,僅僅作用於支援 '擴充套件屬性的檔案系統',並在掛載檔案系統時,需要開啟xattr。支

作業系統課設實驗五---Nachos檔案系統擴充套件

這次的實驗讓我想起了上學期被作業系統的九個實驗支配的恐懼,因為這次可能也是前五次試驗中最難的一次了,讀原始碼加實現花了可能一兩天的時間,所以也有必要記錄一下,有些地方做的不是很好,比如Makefile自己寫的話可能不需要把所有檔案都從filesys複製到lab5,可是我太菜做不到,所以先這樣

spi flash(W25Q64)移植檔案系統LittleFS(作者wenyun 日期20180907)

一、移植步驟 注:使用的開發平臺:STM32F103ZET6 1、下載LittleFS原始碼包:https://github.com/ARMmbed/littlefs 2、把原始碼包裡的lfs.h、lfs.c、lfs_util.h、lfs_util.c拷貝到專案中 3、新增以下程式碼

Linux檔案系統屬性

Linux檔案系統及屬性 宗旨:技術的學習是有限的,分享的精神是無限的。 一、Linux系統下檔案型別及屬性 1、inode結構 /*索引節點物件由inode結構體表示,定義檔案在linux/fs.h中*/ struct inode { struct hlist_

Centos7 xfs檔案系統擴充套件root根分割槽

實驗環境 VMware裡的虛擬機器Centos7 系統版本:Centos7.2 (Core)x64 系統初始磁碟sda大小為18GB後期擴容到30GB Centos7.2系統使用LVM 邏輯卷和XFS檔案系統 實現方式 目前常用方式有兩種: 1、使用LVM邏輯卷擴容實現 注:這種實現方式適用於

mac下檔案帶有擴充套件屬性的問題

在mac下開發的時候,經常會發現有些檔案的屬性後面,有個@符號 如上圖所示。為什麼呢? 在mac os 下 HFS+的檔案系統裡,有時候有些檔案會附加上mac的專有屬性,@屬性就表示檔案或資料夾是

Linux 檢視磁碟分割槽、檔案系統、使用情況的命令和相關工具介紹

提要:Linux 磁碟分割槽表、檔案系統的檢視、統計的工具很多,有些工具是多功能的,不僅僅是檢視磁碟的分割槽表,而且也能進行磁碟分割槽的操作;但在本文,我們只講磁碟分割槽的檢視,以及分割槽的使用情況的檢視;本文只是給新手上路之用;關於分割槽工具的操作,我將在以後做專門介紹;此文目的:主要是向初學者介紹一下入

如何看linux檔案系統型別及掛載硬碟命令

[[email protected] bin]$ sudo parted  [sudo] password for zxc:  GNU Parted 2.1 Using /dev/sda Welcome to GNU Parted! Type 'help' to

檔案系統缺少庫-/bin/sh: hello: not found問題及解決方法

1、問題描述: 執行一個程式,會出現-/bin/sh: xxx :not fount 開啟/sbin下會發現這個xxx可執行檔案是存在的,這可能是檔案系統中(/lib)中缺少某些庫導致的。 2、解決方法-以hello.c示例 以hello.c為例,編譯出了hel

檔案系統與儲存fat32的DBR分析

一沒有包含載入程式,所以該活動分割槽,起始扇區是:只有DBR(分割槽引導扇區)資訊; 如下是第一份DBR:截止地址0x200=512位元組 FAT32採用雙重分割槽引導扇區,所以,後面還有一份DB

linux檔案系統擴充套件(以centos7 xfs為例)

centos7安裝後,預設掛載/dev/centos/root到/,當硬盤裡有未用的空間時,可將這些空間擴充套件至/,本文描述此過程並最後給出參考指令碼 1.先將未用完或擴充套件的硬碟分割槽 2將分割槽建立成pv pvcreate /dev/vda3 3.將新建

linux檔案系統目錄構成及常用命令

/usr/bin  /bin    存放所有使用者可以執行的命令。 /usr/sbin /sbin  存放只有root可以執行的命令(s代表super)。 /home             使用者預設宿主目錄。 /proc              虛擬檔案系統,存放當前記憶體映象(cpu,記憶體,程序資

配置Linux網絡屬性ip命令

via lis strong fff size route add default mman routing 1. ip命令show / manipulate routing, devices, policy routing and tunnels ip [ OPTIO

Linux 虛擬檔案系統四大物件超級塊、inode、dentry、file之間關係

更多嵌入式原創文章,請關注公眾號:一口Linux # 一:檔案系統 ## 1. 什麼是檔案系統? 作業系統中負責管理和儲存檔案資訊的軟體機構稱為檔案管理系統,簡稱檔案系統。 通常檔案系統是用於儲存和組織檔案的一種機制,便於對檔案進行方便的查詢與訪問。 檔案系統是對檔案儲存裝置的空間進行組織和分配,負責

.NET Core的檔案系統[5]擴充套件檔案系統構建一個簡易版“雲盤”

FileProvider構建了一個抽象檔案系統,作為它的兩個具體實現,PhysicalFileProvider和EmbeddedFileProvider則分別為我們構建了一個物理檔案系統和程式集內嵌檔案系統。總的來說,它們針對的都是“本地”檔案,接下來我們通過自定義FileProvider構建一個“遠端”檔案

Linux中df命令用來檢查linux伺服器的檔案系統的磁碟空間佔用情況

linux中df命令的功能是用來檢查linux伺服器的檔案系統的磁碟空間佔用情況。可以利用該命令來獲取硬碟被佔用了多少空間,目前還剩下多少空間等資訊。 1.命令格式: df [選項] [檔案] 2.命令功能: 顯示指定磁碟檔案的可用空間。如果沒有檔名被指定,則所有

Ceph一種可擴充套件,高效能的分散式檔案系統

摘要 我們開發了 Ceph,一種分散式檔案系統。該檔案系統提供極佳的效能,可靠性以及擴充套件性。通過專為不可靠的物件儲存裝置(Object Storage Device,OSDs)所組成的異構、動態叢集而設計的準隨機資料分配演算法(CRUSH),利用其替代檔案分配表,Cep

Linux日常運維管理技巧 w命令-查看系統負載、vmstat命令、top命令、sar命令

Linux日常運維管理技巧 w命令:查看系統負載 w load average 單位時間內使用cpu活動的活動進程有多少個 查看系統cpu(邏輯cpu)數量 cat /proc/cpuinfo(當我們的進程在單位時間內活動數量不超過我們的系

《Linux學習並不難》Linux常用操作命令(6)uname命令顯示計算機和系統相關信息

Linux8.6 《Linux學習並不難》Linux常用操作命令(6):uname命令顯示計算機和系統相關信息 使用uname命令可以顯示計算機以及操作系統的相關信息,比如計算機硬件架構、內核發行號、操作系統名稱、計算機主機名等。 命令語法: uname [選項] 命令中各選項的