二、(3)Linux的文件與數據之:元數據

文件的元數據

在Linux的文件系統中,數據可分為兩大類:數據元數據

  • 數據:泛指普通文件中的實際數據
  • 元數據:用來描述一個文件的特征的系統數據

這樣抽象的描述并不能很清楚地表示元數據的定義,所以下面將借助stat命令進行舉例說明:

stat命令

stat – display file or file system status(用于展示文件或文件系統的狀態)

  • 用法:stat [OPTION]… FILE…
  • 示例:

搜狗截圖20180110191631

  • 解釋說明:利用stat命令,可以顯示文件的元數據
    • File:文件名
    • Size:文件大?。▎挝唬築)
    • Blocks:文件所占扇區個數,為8的倍數(通常的 Linux 的扇區大小為 512 B,連續八個扇區組成一個block)
    • IO Block:每個數據塊的大?。▎挝唬築)
    • regular file:普通文件(此處顯示文件的類型)
    • Links:硬鏈接次數
    • Access:權限
    • Uid:(屬主id/屬主名)
    • Gid:(屬組id/屬組名)
    • Access:最近訪問時間
    • Modify:數據改動時間
    • Change:元數據改動時間

以上的參數均屬于文件的元數據,元數據即用來描述數據的數據

時間戳

此處著重說明一下文件的時間戳:

  • Access:Access time(atime),是指取用文件的時間,所謂取用,常見的操作有:使用編輯器查看文件內容,使用cat命令顯示文件內容;使用cp命令把該文件(即來源文件)復制成其他文件;或者在這個文件上運用grep、sed、more、less、tail、head等命令,凡是讀取文件的操作,均改變文件的Access time
  • Modify:Modify time(mtime),是指修改文件內容的時間,只要文件內容有改動(如使用轉向輸出或轉向附加的方式)或存盤的操作,就會改變文件的Modify time,平常我們使用ls –l查看文件時,顯示的時間就是Modify time
  • Change:Change time(ctime),是指文件屬性或文件位置改動的時間,如:使用chmod、chown、mv指令集;使用ln做文件的硬是連接,都會改變文件的Change time

touch命令

為了更形象地描述時間戳,下面將引入touch命令,通過具體的例子來進行區分:

touch – change file timestamps(修改文件的時間戳)

  • 用法:touch [OPTION]… FILE…
  • 常用參數:
    -c:指定的文件路徑不存在時不予創建
    -a: 僅修改access time
    -m:僅修改modify time
    注意:Change time不能手動指定
    -t:修改Access time和Modify time為指定時間,格式為:[[CC]YY]MMDDhhmm[.ss](年月日時分.秒)
  • 示例:
  1. 首先使用touch命令創建一個空文件(touch + 文件名,當文件不存在時,可以用于創建空文件)
    搜狗截圖20180111121148
  2. 使用touch -a 123.txt,修改123.txt的Access時間為當前系統時間
    搜狗截圖20180111123007
    這時我們發現文件的Change time一同被改變了,因為Access time屬于文件元數據中的一項,當Access time被修改時,文件的屬性也被改動
  3. 使用touch -m 123.txt,將123.txt的Modify時間改為當前系統時間
    搜狗截圖20180111123523
    這時我們發現文件的Change time一同被改變了,原因和上面相同,當Modify time被修改時,文件的屬性也被改動
  4. 使用touch -t 1801120000.00 123.txt,將文件的訪問和修改時間改為2018年1月12日0點0分0秒
    搜狗截圖20180111124646

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91013

(1)
ZSZS
上一篇 2018-01-10
下一篇 2018-01-11

相關推薦

  • 編譯安裝apache

    編譯安裝apache可簡單分為3步: 第一步:下載apache軟件包解決依賴關系并生成Makefile 1.首先準備開發環境,可以通過yum安裝開發包組:yum groupinstall Development Tools 2.準備apache軟件包,可以通過http://httpd.apache.org下載到本地。隨后解包tar -xf?httpd-2.4…

    Linux干貨 2017-12-03
  • PXE實踐

    本篇只以記錄個人部署pxe過程中所遇問題,至于原理,只做部分簡單說明。 pxe部署必要軟件: syslinux (用于提供引導中所必備文件) tftp(用于提供存放vmlinuz,initrd,syslinux.0等引導類文件) dhcp(用于自動獲取IP包括指明去哪個主機獲取syslinux.0文件) 最后還需要一個web或者ftp服務,已提供系統安裝中所…

    Linux干貨 2017-02-05
  • rpm軟件包管理

    軟件包管理 軟件運行環境 API   應用程序開發接口 ABI   二進制接口 Rpm包命名方式 Name-version-release-arch-rpm 例如 zziplib-devel-0.13.162-5.el7.i686.rpm zziplib :主包名 dewel:次包名 0.13.162: 主版…

    Linux干貨 2016-08-24
  • 進程管理

    linux進程管理     內核的功能:進程管理、文件系統、網絡管理、驅動程序、安全功能等     Pcrocess:運行中的程序的一個副本,是被載入內存中的一個指令集和         PID:進程…

    Linux干貨 2016-09-12
  • 隨筆—git的基本命令

    git是一個非常優秀的版本控制系統,可以對各類大小的項目進行源代碼管理,  #git的常用功能如下: 1、從服務器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。 2、在本地倉庫上根據不同的開發目的,創建分支,修改代碼。 3、在本機上向自己創建的分支上提交代碼。 4、在本機上合并分支。 5、將本地倉庫代碼和分支推送到服務器上的遠程倉庫 在官網…

    Linux干貨 2016-07-04
  • ?文件共享服務之FTP

    文件共享服務之FTP 文件共享服務之FTP 一、什么是文件共享服務 二、FTP 三、響應碼 四、FTP存儲和mysql存儲有什么不同? 五、用戶認證 六、FTP安裝與配置 一、什么是文件共享服務 簡單理解就是文件或存儲塊設備可以共享給大家使用。  1、實現共享服務有三種! (1)ftp:屬于應用層服務,可以跨平臺使用(linux<—&gt…

    Linux干貨 2016-04-18
欧美性久久久久