Linux基础命令touch

一、基础选项

​**-a / --time=atime / --time=use**
​功能:仅修改文件的访问时间​(atime),不改变修改时间(mtime)。
​示例:
bash
touch -a file.txt # 更新访问时间为当前时间
touch -a -t 202503141200 file.txt # 设置访问时间为2025-03-14 12:00:00
​引用:
​**-c / --no-create**
​功能:不创建新文件(若文件不存在),仅更新已有文件的时间戳。
​示例:
bash
touch -c non_existing.txt # 不创建文件,仅更新时间(若存在)
​引用:
​**-d / --date=字符串**
​功能:使用指定字符串表示时间(支持自然语言格式)。
​示例:
bash
touch -d “2 days ago” file.txt # 设置时间为两天前
touch -d “next Friday” file.txt # 设置时间为下周五
​引用:
​**-m / --time=modify / --time=mtime**
​功能:仅修改文件的修改时间​(mtime),不改变访问时间(atime)。
​示例:
bash
touch -m file.txt # 更新修改时间为当前时间
​引用:
​**-r / --reference=文件**
​功能:将目标文件的时间戳设置为参考文件的相同时间。
​示例:
bash
touch -r source.txt target.txt # target.txt时间与source.txt一致
​引用:
​**-t**
​功能:使用指定时间戳(格式为 [[CC]YY]MMDDhhmm[.ss])修改文件时间。
​示例:
bash
touch -t 202503141230.45 file.txt # 设置时间为2025-03-14 12:30:45
​引用:

​二、文件与目录操作

​批量创建文件
​功能:通过通配符或列表一次性创建多个文件。
​示例:
bash
touch {a…c}.log # 创建a.log, b.log, c.log
touch file{1…5}.txt # 创建file1.txt至file5.txt
​引用:
​递归创建目录
​功能:通过 -p 选项递归创建目录(若目录不存在)。
​示例:
bash
touch -p dir1/dir2/file.txt # 创建dir1/dir2目录及file.txt
​引用:

​三、特殊场景处理

​处理符号链接
​**-h / --no-dereference**
​功能:修改符号链接本身的时间戳,而非链接指向的文件。
​适用场景:仅当系统支持修改符号链接所有者时有效。
​示例:
bash
touch -h symlink.txt # 修改链接时间而非目标文件时间
​引用:
​避免覆盖现有文件
​**-c** 或 ​**-h**
​功能:若文件不存在,不创建新文件且不报错。
​示例:
bash
touch -c non_existing.txt # 仅更新时间(若存在)
​引用:

​四、组合使用示例

​设置特定时间并保留其他属性
bash
touch -d “2025-01-01 00:00:00” -m file.txt # 设置时间为2025-01-01 00:00,仅修改mtime
​批量更新多个文件时间
bash
touch -r reference.txt *.log # 将所有.log文件时间设为reference.txt时间
​创建并初始化文件
bash
touch file.txt && echo “content” > file.txt # 创建文件并写入内容

​五、注意事项

​权限问题
需对文件或目录有读写权限,否则报错 Permission denied。
​解决方法:使用 sudo 提升权限:
bash
sudo touch -m /root/file.txt
​时间格式兼容性
-d 和 -t 支持不同格式,需注意时间字符串的语法。
​示例冲突:
bash
touch -t 20251301 # 错误:月份超出范围(01-12)
touch -d “2025-13-01” # 正确:自动解析为下一年的1月
​符号链接默认行为
默认跟随链接修改目标文件时间,使用 -h 可改变此行为。

​六、引用说明

选项功能与示例:
时间格式与符号链接处理:
权限与组合操作:
如需查看完整手册,可通过 man touch 或 touch --help 获取详细信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值