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

文件的元數據

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

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

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

stat命令

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

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

搜狗截圖20180110191631

  • 解釋說明:利用stat命令,可以顯示文件的元數據
    • File:文件名
    • Size:文件大小(單位:B)
    • 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 18:43
下一篇 2018-01-11 14:16

相關推薦

  • Linux程序包管理方式

    Linux程序包安裝和管理方式共計三種:          一、[yum|dnf],通過官網或者其他開源網站提供的文件服務器,本機鏡像源等途徑進行安裝。         二、rpm,通過官網或者其他開源網站通過…

    Linux干貨 2016-08-29
  • 第二十周作業

    一、用keepalived實現nginx與lvs的高可用集群 keepalived+nginx高可用環境:node1:    192.168.31.233     keepalived+nginx masternode2:    192.168.31.72      k…

    2017-07-22
  • 任務計劃

    所謂計劃任務就是指某一個時間系統自動做一件事情如輸入指令或者保存文件等等 計劃任務分兩種:一次性計劃任務命令(at)和周期性計劃任務命令(crontab)at的用法:如果當前時間為2017年6月6日 at 18:00 2017-06-6 w > /root/who.txt init 0 (輸入ctrl+d結束編輯…

    Linux干貨 2017-06-07
  • 網絡服務之Apache

      互聯網這個歷史已經不算很短了,它大大方便了人類獲取信息,開闊了人類的眼界,使得讓這個世界變得小了起來,人與人之間的距離感也不會存在了,娛樂也更加豐富,聽音樂、看電影等等這一系列,都能從網上進行,這些功能,都是由www服務器來提供服務,在Linux中,提供網絡的服務器有很多種,那么今天我們就講一個比較老牌,且依然能存活的服務器“阿帕奇”…

    Linux干貨 2017-01-13
  • corosync v2 + pacemaker + crmsh 實現mariadb高可用

    高可用mariadb拓撲圖 一、設計前提     1、時間同步 # ntpdate 172.16.0.1 或者 # chronyc sources     2、所有的主機對應的IP地址解析可以正常工作, 主機名要與命令#uname -n 所得的結果一致   &…

    Linux干貨 2016-08-28
  • 《種一棵樹最好的時間,是十年前,其次是現在。》

    選擇一個處于不斷發展中的行業,學習新知識就如逆水行舟,不能停止。

    Linux干貨 2018-03-26
欧美性久久久久