touch

touch命令

 

命令功能:

1.touch命令经常用来创建一个不存在的空文件和更改文件的时间。

2.创建新文件是为了作为程序运行的标记,程序执行完就删除了。而更新文件的时间通常是为了让某些软件能够正常运行。

 

 

命令参数:

 

-a   或--time=atime或--time=access或--time=use  只改变文件的读取时间。

-c   或--no-create  不建立任何文档。

-d  使用指定的日期时间,而非现在的时间。设定时间与日期,可以使用各种不同的格式。

-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

-m   或--time=mtime或--time=modify  只改变文件的修改时间

-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同,与 --file 的效果一样,使用参考文件的时间记录,指定和file相同的时间。

-t  使用指定的日期时间,而非现在的时间。设定档案的时间记录,格式与 date 指令相同,-t(time):指定时间,格式为:[[yy]yy]MMDDhhmm[ss]


 

示例说明:

示例一:新建新文件

touch dir1/test/test.txt    #使用touch命令在dir1/test下创建文件test.txt

        

      一开始查看new.txt文件的信息,提示没有new.txt。利用命令:“touch filename”建立了名为filename的文件。

示例二:更改文件时间为当前文件

        

      利用命令:“touch filename”可以把文件的时间当前的时间

示例三:更改文件的时间为指定时间

        

       利用命令“touch -t time filename”格式给文件设定具体的时间。

示例四:更改文件的时间为与其它文件相同的时间

        

      利用命令“touch -r filename1 filename2”,可以把filename2的时间设置为和filename1相同

 

五、touch命令使用举例
  例一:更新file1.txt的存取和修改时间。   touch file1.txt
  例二:如果file1.txt不存在,不创建文件   touch -c file1.txt
  例三:更新file1.txt的时间戳和ref+file相同   touch -r ref+file file1.txt
  例四:设置文件的时间戳为2011年5月18日9点45分10秒   ls -l file1.txt
  touch -t 1105190945.10 file1.txt

 

范例:
最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,系统会建立一个新的档案。
touch file
touch file1 file2

将 file 的时间记录改为 5 月 6 日 18 点 3 分,公元两千年。时间的格式可以参考 date 指令,至少需输入 MMDDHHmm ,就是月日时与分。 安全技术
touch -c -t 05061803 file
touch -c -t 050618032000 file

将 file 的时间记录改变成与 referencefile 一样。
touch -r referencefile file

将 file 的时间记录改成 5 月 6 日 18 点 3 分,公元两千年。时间可以使用 am, pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000 。
touch -d "6:03pm" file
touch -d "05/06/2000" file
touch -d "6:03pm 05/06/2000" file

 

[OK_008@CentOS4 ~]$ touch aa --建立一个aa的文件
[OK_008@CentOS4 ~]$ ls -l --Full-time --在Linux中大小写是很敏感的,就如c语言一样。
ls: unrecognized option `--Full-time'
 Try `ls --help' for more information.
 [OK_008@CentOS4 ~]$ ls -l --full-time --显示列表
total 12
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:11:49.000000000 +0800 aa
 drwxrwxr-x  2 OK_008 OK_008 4096 2007-09-28 17:05:35.000000000 +0800 OK008Filed
 [OK_008@CentOS4 ~]$ touch {bb.txt,cc.txt,dd.txt}
 [OK_008@CentOS4 ~]$ ls -l --full-time
 total 24
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:11:49.000000000 +0800 aa
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 bb.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 cc.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 dd.txt --注意这一行的时间
drwxrwxr-x  2 OK_008 OK_008 4096 2007-09-28 17:05:35.000000000 +0800 OK008Filed

[OK_008@CentOS4 ~]$ touch {bb,cc,dd} --touch命令还可以一次建立多个空文件
[OK_008@CentOS4 ~]$ ls -l --full-time
 total 36
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:11:49.000000000 +0800 aa
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 bb
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 bb.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 cc
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 cc.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 dd
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 dd.txt
 drwxrwxr-x  2 OK_008 OK_008 4096 2007-09-28 17:05:35.000000000 +0800 OK008Filed

[OK_008@CentOS4 ~]$ touch {dd.txt,ee.txt} --这里重新建立多个文件,注意的是dd.txt与上前面代码写dd.txt的时间显示。
[OK_008@CentOS4 ~]$ ls -l --full-time
 total 40
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:11:49.000000000 +0800 aa
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 bb
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 bb.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 cc
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:28.000000000 +0800 cc.txt
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:12:52.000000000 +0800 dd
 -rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:13:13.000000000 +0800 dd.txt --注意这一行的时间
-rw-rw-r--  1 OK_008 OK_008    0 2007-09-28 17:13:13.000000000 +0800 ee.txt
 drwxrwxr-x  2 OK_008 OK_008 4096 2007-09-28 17:05:35.000000000 +0800 OK008Filed
[OK_008@CentOS4 ~]$ 
 [OK_008@CentOS4 ~]$ rm aa bb bb.txt cc cc.txt dd dd.txt ee.txt --删除刚才建立的几个空文件
[OK_008@CentOS4 ~]$ ls
 OK008Filed

 

实例1:

创建文件a.txt

amosli@amosli-pc:~/learn/dir/folder/par$ touch  a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 12月 26 23:07 a.txt

实例2:

更改a.txt修改时间记录(-m参数):
amosli@amosli-pc:~/learn/dir/folder/par$ touch -m a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 12月 26 23:09 a.txt

实例3:

指定时间来创建文件(-t参数):

复制代码
amosli@amosli-pc:~/learn/dir/folder/par$ touch -t 201812262315.34 b.txt
amosli@amosli-pc:~/learn/dir/folder/par$ ll
total 8
drwxrwxr-x 2 amosli amosli 4096 12月 26 23:24 ./
drwxrwxr-x 3 amosli amosli 4096 12月 26 22:57 ../
-rw-rw-r-- 1 amosli amosli    0 12月 26 23:19 a.txt
-rw-rw-r-- 1 amosli amosli    0 12月 26  2018 b.txt
复制代码

实例4:

#将 file 的时间记录改变成与 referencefile 一样。
touch -r referencefile file

 

amosli@amosli-pc:~/learn/dir/folder/par$ touch -r b.txt  a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 12月 26  2018 a.txt
-rw-rw-r-- 1 amosli amosli 0 12月 26  2018 b.txt

 

 

 

 总结:

创建文件的发法:

创建目录的方法:

1.mkdir

创建普通文件的方法:

1.touch AA.txt;更新AA.txt文件的访问和修改时间,如果a.txt不存在,则创建之。

2.vi/vim AA.txt  ;记得退出后需要保存

3.echo "Hello World!" > AA.txt   //这个方法跟上面的这个差不多,都是将输出重定向到文件

4.cat > AA.txt  //这个方法用的人比较少,有什么好处呢,就是不用进入编辑器,就可以新建一个非空文件,别忘了用 Ctrl + D 结束编辑,小缺点,一次只能编辑一行,按回车键之后,就不能对之前的行进行编辑。

5.dd命令

 

 

 

posted @ 2014-07-14 22:25  Agoly  阅读(267)  评论(0编辑  收藏  举报