## touch命令
[TOC]
>[info] touch命令有两个功能:
一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;
二是用来创建新的空文件。
### 语法
`touch (选项) (参数)`
### 选项
>[success] -a:或--time=atime或--time=access或--time=use 只更改存取时间;
> -c:或--no-create 不建立任何文件;
> -d:<时间日期> 使用指定的日期时间,而非现在的时间;
> -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
> -m:或--time=mtime或--time=modify 只更该变动时间;
> -r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
> -t:<日期时间> 使用指定的日期时间,而非现在的时间;
### 参数
文件:指定要设置时间属性的文件列表
## 实例
### 在当前目录下建立一个空文件ex2
然后,利用ls -l命令可以发现文件ex2的大小为0,表示它是空文件。
命令:touch ex2
输出:
~~~
[root@localhost test]# touch ex2
[root@localhost test]# ls -l
总计 0
-rw-r--r-- 1 root root 0 09-14 14:19 ex2
# 如果文件存在则刷新文件创建时间 不新建
[root@localhost test]# cat ex2
1111
[root@localhost test]# ls -l
总计 4
-rw-r--r-- 1 root root 5 09-14 14:21 ex2
[root@localhost test]# date
2015年 09月 14日 星期一 14:23:36 CST
[root@localhost test]# touch ex2
[root@localhost test]# ls -l
总计 4
-rw-r--r-- 1 root root 5 09-14 14:23 ex2 # 文件创建时间被修改
[root@localhost test]# cat ex2
1111 # 文件内容不变
~~~
### 更新ex2的时间和ex1时间戳相同
命令:`touch -r ex1 ex2` *(将后面的时间改成前面的时间)*
输出:
~~~
[root@localhost test]# ls -l
-rw-r--r-- 1 root root 0 2011-09-14 ex1
-rw-r--r-- 1 root root 5 09-14 14:23 ex2
[root@localhost test]# touch -r ex1 ex2
[root@localhost test]# ls -l
-rw-r--r-- 1 root root 0 2011-09-14 ex1
-rw-r--r-- 1 root root 5 2011-09-14 ex2
~~~
### 设定文件的时间戳
命令:`touch -t 2015091414631.55 ext1`
输出:
~~~
[root@localhost test]# ls -l
-rw-r--r-- 1 root root 0 09-14 14:27 ex1
-rw-r--r-- 1 root root 5 09-14 14:23 ex2
[root@localhost test]# ls -l
-rw-r--r-- 1 root root 0 2011-09-14 ex1
-rw-r--r-- 1 root root 5 09-14 14:23 ex2
~~~
**说明**
> `-t time`
> 使用指定的时间值time作为指定文件相应时间戳记的新值.此处的time规定为如下形式的十进制数:[[CC]YY]MMDDhhmm[.SS]
> 这里,CC为年数中的前两位,即”世纪数”;
> YY为年数的后两位,即某世纪中的年数。如果不给出CC的值,则touch 将把年数CCYY限定在1969--2068之内。MM为月数,DD为天将把年数CCYY限定在1969--2068之内.MM为月数,DD为天数,hh为小时数(几点),mm为分钟数,SS为秒数。
> 此处秒的设定范围是0--61,这样可以处理闰秒.这些数字组成的时间是环境变量TZ指定的时区中的一个时间。由于系统的限制,早于1970年1月1日的时间是错误的。
- Linux的安装
- Linux的软件安装管理
- Linux零碎的命令
- 了解ssh
- 系统调优及安全设置
- Linux系统中的硬链接和软连接
- Linux文件和目录的属性及权限
- 命令总结
- 文件目录管理命令
- cat
- cd
- cp
- ls
- mkdir
- mv
- rm
- touch
- vi
- 硬件检测内核shell命令
- echo
- alias
- dd
- diff
- date
- grep(重要)
- head
- rpm
- sed(重要)
- tree
- unalias
- yum
- seq
- su
- less
- more
- tail
- awk(重要)
- pwd
- history
- whoami
- find(重要)
- which
- vimdiff
- sudo
- wget
- ln
- chmod
- chown
- vim常用技巧
- scp
- 工作场景应用总结
- 自动删除n天前日志
- 删除一个目录下的所有文件但保留一个文件
- Linux软件安装
- php安装(apache版本)
- vsftpd安装
- git安装
- python安装
- LNMP安装
- LAMP安装I
- LAMP安装II
- svn安装
- svn在Linux下的命令操作
- svn钩子简介
- svn代码上传流程
- Crond介绍
- sersync应用指南
- 其他
- 小结一
- 系统调优重新整理tmp
- linux禁止root用户直接登录sshd并修改默认端口