当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux系统下touch命令的使用方法

Unix/Linux
FreeBSD 数据转移办法
Freebsd 下运行QQ For Linux 的方法
FreeBSD, Debian, CentOS一个网卡绑定多个IP
freebsd下切换到root下 su: Sorry 的解决办法
Freebsd挂载光驱和软驱
FREEBSD下运行调试asterisk
一些 freebsd 的常用命令
笔记本上安装freebsd的小知识
FreeBSD系统下添加中文字体
FreeBSD挂载DOS分区,正确显示中文
FreeBSD挂载DOS分区时显示中文的方法
freebsd7.0安装系统图解(最新版)
服务器的时间同步设置方法
FreeBSD FTP 的架设教程
FreeBSD mpd VPN服务器安装步骤
更新FreeBSD Port Tree的几种方法小结
portupgrade 中文手册(翻译)
freebsd 服务器 ARP绑定脚本
在Ubuntu系统中定制 Compiz Fusion 特效
Ubuntu 7.10 绑定IP及MAC地址

Unix/Linux 中的 Linux系统下touch命令的使用方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 689 ::
收藏到网摘: n/a

指令名稱:
touch(1) - 更新檔案的時間紀錄
說明:
藉由這個指令,我們可以同時或單獨變更檔案的兩種時間紀錄,讀取時間(access time)以及修改時間(modification time)。
選項:
-a
更改文件的讀取時間(access time)
-c, --no-create
不建立任何新檔案
-m
更改文件的修改時間(modification time)
-t STAMP
設定"特定時間"來代替"目前時間",格式 [[CC]YY]MMDDhhmm[.ss]
--help
顯示程式用法資訊
--version
顯示程式本身的版本資訊
實例說明:
空檔案                                       
# touch file-touch1
            # ls -l
            total 0
            -rw-r--r-- 1 root root 0 7月 9 13:53 file-touch1
            #
一般狀況下使用 touch 指令變更檔案時間,如果檔案不存在,touch 會自動建立指定的檔案(空檔案)。如果不想因使用 touch 而建立任何新檔案,必須加上選項 -c                                       
# touch -c file-touch2
            touch: setting times of `file-touch2': 沒有此一檔案或目錄
            #
指令的執行結果是出現一段錯誤訊息,因為指定的檔案不存在。這正是加上選項 -c 的目的。 更新檔案時間 touch 指令一般是以下指令當時的電腦時間來作為更新檔案的時間。但也提供特殊的選項 -t 來
指定"特定的時間"作為更新時間。 為了舉例的方便,我原封不定地,拷貝一隻已建檔許久的系統程式 -- tcsh                                       
# cp -a /bin/tcsh .
            # ls --full-time
            total 288
            -rwxr-xr-x 1 root root 288604 週一 6月 25 03:45:26 2001 tcsh
            #
這隻程式的最後修改時間是 -- 2001 年 6 月 25 日 3 點 45 分 26 秒。 現在,我因監控上的需要,打算將檔案時間變更為 2002 年 7 月 1 日 8 點 00 分 01 秒。最簡單有效的作法如下                                       
# touch -t 200207010800.01 tcsh
            # ls --full-time
            total 288
            -rwxr-xr-x 1 root root 288604 週一 7月 01 08:00:01 2002 tcsh
選項的語法很單純,就是直接鍵入西元的年月日時分數字即可,其間不需任何分隔。如果要加上秒數,做法比較特別,需使用小點"."來與前段區隔。 當然,在有需要時,touch 指令也支援"讀取時間"或"修改時間"的單獨變更。                                       
# touch -at 200207022300 tcsh
            # ls -lu
            total 288
            -rwxr-xr-x 1 root root 288604 7月 2 23:00 tcsh
            #
上例是單獨變更"讀取時間", 下例則是變更"修改時間"                                       
# touch -mt 200206302300 tcsh
            # ls -l
            total 288
            -rwxr-xr-x 1 root root 288604 6月 30 23:00 tcsh
            # ls -lu
            total 288
            -rwxr-xr-x 1 root root 288604 7月 2 23:00 tcsh
            #
以上這些例子,即是大體上 touch 的運用。這篇就暫時先寫到這裡好了。