Linux Touch 命令

Touch命令可以用来修改文件访问或修改的时间戳。实际上,它更常仅仅用于快速的创建一个空白文件。

这篇文章展示了一些非常简单和快速的实例,使用Touch命令来修改时间戳和创建文件。

1.创建空白文件

为了使用touch命令简单的创建一个空白文件,使用以下语法:

# touch abc.txt

如果文件已经存在,它的访问时间将会被更新。

2.用Touch创建多个文件

为了创建多个文件,指定它们的名字并通过空格分隔。

#touch abc.txt cde.txt xyz.txt

3 创建大量文件

如果出于某些原因你希望创建大量文件,然后像这样的命令将非常有帮助。

// Create files with names A to Z
# touch {A..Z} // Create files with names 1 to 20
# touch {1..20} //Create files with extension
# touch {1..1000}.txt // Create 10k files
# touch {1..10}{1..1000}

然后用ls命令查看所有的文件已经被创建了

4.避免创建新文件

如果你只想要更新已经存在文件的访问时间,而不创建它,使用'-c'选项。如果文件存在,touch命令将更新访问时间,否则将什么也不做。

# touch -c hello.txt

5.改变文件的访问时间 -'a'选项

使用-a选项和文件名来只改变文件的访问时间

# touch -a abc.txt

使用stat命令检查访问时间

# stat a.txt
File: ‘a.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 35864114 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2018-11-10 21:32:12.581976147 +0800
Modify: 2018-11-10 21:32:12.581976147 +0800
Change: 2018-11-10 21:32:12.581976147 +0800
Birth: -

6.改变修改时间 '-m'选项

使用'-m'选项改变文件的修改时间

[root@lanquark ~]# touch -m a.txt
[root@lanquark ~]# stat a.txt
File: ‘a.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 35864114 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2018-11-10 21:32:12.581976147 +0800
Modify: 2018-11-10 21:33:52.703978421 +0800
Change: 2018-11-10 21:33:52.703978421 +0800
Birth: -

使用通配符改变多个文件的修改时间

# touch -m *.txt

7.同时改变访问和修改时间

使用a和m选项一起修改访问和修改时间

# touch -am a.txt

[root@lanquark ~]# touch -am a.txt
[root@lanquark ~]# stat a.txt
File: ‘a.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 35864114 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2018-11-10 21:37:28.352983318 +0800
Modify: 2018-11-10 21:37:28.352983318 +0800
Change: 2018-11-10 21:37:28.352983318 +0800
Birth: -

8.设定一个明确的访问或修改时间

使用t选项设定访问或修改时间为一个明确的日期时间,明确的日期时间格式为[[CC]YY]MMDDhhmm[.ss]

# touch -c -t 1811101015 a.txt
or
# touch -c -t 201811101015 a.txt

注意-如果忽略了c选项,如果文件不存在,一个新的指定了日期时间的文件将被创建。

9.以其他文件的时间戳作为参考

# touch -r ref.txt abc.txt

上面的命令将设定abc.txt的访问或修改时间为ref.txt的访问和修改时间

10.指定时期时间为字符串

除了t选项之外,还有另一个选项'-d', 它接受一般人类可读格式的日期时间。

下面的示例仅仅提供了日期,时间自动的设置为00:00

# touch -c -d '14 Mar' abc.txt

或者只提供时间,将设定为当前的日期

# touch -d '14:24' abc.txt

想了解更多,通过'man touch'查看man帮助信息

原文: https://www.binarytides.com/linux-touch-command/

2018-11-10 by Kennminn

Linux上的10个Touch命令实例的更多相关文章

  1. linux每日命令(10):touch命令

    linux的touch命令一般用来修改文件时间戳,或者新建一个不存在的文件. 一.命令格式: touch [参数]... 文件... 二.命令参数: 参数 描述 -a 或--time=atime或-- ...

  2. Linux中的15个‘echo’ 命令实例

    echo是一种最常用的与广泛使用的内置于Linux的bash和C shell的命令,通常用在脚本语言和批处理文件中来在标准输出或者文件中显示一行文本或者字符串. echo命令的语法是: echo [选 ...

  3. Linux基本命令(10)其他命令

    其他命令 命令 功能 命令 功能 echo 显示一字串 passwd 修改密码 clear 清除显示器 lpr 打印 lpq 查看在打印队列中等待的作业 lprm 取消打印队列中的作业 10.1 ec ...

  4. Linux学习历程——Centos 7 touch命令

    一.命令介绍 touch 命令用于创建空白文件,以及设置文件的时间. ----------------------------------------------------------------- ...

  5. linux 执行远程linux上的shell脚本或者命令以及scp 上传文件到ftp--免密码登陆

    场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P ...

  6. linux 上传scp 压缩tar命令

    1.Linux 上传scp 1)上传文件与文件夹 scp file weblogic@xx.xxx.xxx.xxx:~/songjd/ scp -r filefolder weblogic@xxx.x ...

  7. Linux上常用插件的一些命令

    Linux上关于jdk tomcat MySQL dubbo等的一些启动,结束,查看状态的命名. 1.tomcat 运行tomcat cd bin/ 进入tomcat 的bin 文件夹,直接运行: . ...

  8. Linux上的一些基本常用命令

    上传下载文件:// 首先安装lrzsz # yum -y install lrzsz // 上传文件,执行命令rz,会跳出文件选择窗口,选择好文件,点击确认即可.# rz // 下载文件,执行命令sz ...

  9. Linux上安装rz和sz命令

    简介 lrzsz 官网入口:http://freecode.com/projects/lrzsz/ lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议 windows 需要向ce ...

随机推荐

  1. mongodb在ubuntu下无法打开的问题

    通过查询大概知道了是非正常关闭,mongod.lock的事,ubuntu的mongod.lock在/var/lib/mongodb中,删除之后即可重新打开.

  2. Python读写txt文件时的编码问题

    这个问题来自于一个小伙伴,他在处理中文数据时需要先把里面的文本过滤然后分词,因为里面有许多符号,不仅是中文标点符号,还有✳,emoji等奇怪的符号. 正常情况下,中文的str经过encode('utf ...

  3. 兼容ie8的前端下载方法

    背景:在xp系统上 ie8浏览器的下载需求,后端返回资源路径. 方法:谷歌下采用aDown下载,ie采用window.open 触发下载,如果不能自动自动下载,采用execCommand(" ...

  4. Redis(三)-数据类型

    1.五种数据类型:字符串类型.字符串列表.有序字符串集合.哈希.字符串集合 2.字符串类型常用操作 (1)赋值 $ set key value (2)取值 $ get key (3)删除 $ del ...

  5. Vue 组件的使用

    1.引入组件 import Week from '../week/main.vue' export default { name: "classMain", components: ...

  6. css选择器以及使用场景

    1.选择器以及使用场景 id选择器:#header{} 类选择器:.header{} 元素选择器:div{} 子选择器:ul > li{} 后代选择器:div p{} 伪类选择器:a:hover ...

  7. 序列化---Serializable与Externalizable源码

    Serializable接口总结: 1. java.io.Serializable接口是一个标识接口,它没有任何字段和方法,用来表示此类可序列化: 2. 父类声明该接口,则其与其所有子类均可序列化,都 ...

  8. 嵌套if-esle语句

    C语言自学之嵌套if-esle语句 Dome : 获奖条件为年销售业绩100万以上,并且入职满两年的员工.小明进入公司1年,销售业绩为120万. 在代码编辑器中使用嵌套if-else语句判断小明是否有 ...

  9. max of 直线划平面

    在一个无限延伸平面上有一个圆和n条直线,这些直线中每一条都在一个圆内,并且同其他所有的直线相交,假设没有3条直线相交于一点,试问这些直线最多将圆分成多少区域. Input 第一行包含一个整数T,(0& ...

  10. jquery 浮动 固定显示

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>无标题文档 我爱b ...