linux - 发现 printf 无法打印换行符或回车
问题描述
我正在制作一个脚本来检查并列出我们工作文件夹中某些文件的输出。我想检查今天(或者我猜是过去 24 小时内)存在的文件。
目前我正在做以下事情:
find /folder/jobfolder/rrz* -type f -mtime 0
所以我得到这样的东西:
/folder/jobfolder/rrzabc_1234.lis
/folder/jobfolder/rrzdef_4567.lis
/folder/jobfolder/rrzgre_8901.log
理想情况下,我想使用 printf 命令将日期添加到其中,这样我就可以查看它是否是今天并逐行分隔。如果我做
find/folder/jobfolder/rrz* -type f -mtime 0 -printf %p\t%AD\n
它不需要使用转义字符。
/folder/jobfolder/rrzabc_1234.lis/folder/jobfolder/rrzdef_4567.lis/folder/jobfolder/rrzgre_8901.log
有没有更好的方法来解决这个问题?也可以-iname
用来匹配大写或小写字母可能会有所帮助
解决方案
您缺少引号;尝试
-printf '%p\t%AD\n'
这样 bash 就不会解释\
推荐阅读
- c# - ListView 数据虚拟化概念和实现
- ruby - 如何在数组上运行循环,组合结果并将它们设置为变量
- ios - UITableView 核心数据推送不正确的索引和数据
- python - 图像查看器 GUI 无法正确映射鼠标按下事件的坐标
- javascript - 用于动态更改超链接的Javascript不起作用
- events - 您如何存储变异状态、事件驱动编程?
- node.js - 使用 Bcrypt.Hash 的节点 JS - 更新后密码不会被散列
- r - R - 过滤具有来自 DF2 的时间戳条件的第一个数据帧
- java - 进程不返回它的输出
- bluetooth-lowenergy - 蓝牙 LE 服务 UUID 和特征 UUID 格式