Macos 查找:-printf:未知选项
可能重复:Macos 查找:-printf:未知选项,macos,bash,shell,pipe,Macos,Bash,Shell,Pipe,可能重复: 不确定以下命令有何错误,但任何人都可以发现错误: find public_html -name '*.php' -printf '%h \n' | sort -u > dirlist.txt 基本上,我试图在我的公共html目录中找到扩展名为*.php的所有目录的名称。然后打印出该文件所在的目录。它的输出通过管道进行排序,重复的条目通过-u标志删除,结果存储在新文件dirlist.txt中 但我在执行死刑时得到的是: find: -printf: unknown opti
不确定以下命令有何错误,但任何人都可以发现错误:
find public_html -name '*.php' -printf '%h \n' | sort -u > dirlist.txt
基本上,我试图在我的公共html目录中找到扩展名为*.php的所有目录的名称。然后打印出该文件所在的目录。它的输出通过管道进行排序,重复的条目通过-u标志删除,结果存储在新文件dirlist.txt中
但我在执行死刑时得到的是:
find: -printf: unknown option
不知道我哪里弄错了
谢谢您的find版本似乎没有-printf选项 我也会这样做:
find public_html -type f -name '*.php' | xargs -n1 dirname | sort -u > dirlist.txt
是的,您的版本似乎没有-printf选项-Mac变体我不知道-可能还有其他版本 您的备选方案是将其输送到sed并进行排序,如下所示:
find public_html -name '*.php'|sed 's#\(.*\)/.*#\1#' |sort -u
该错误是因为
find
没有printf
选项-这正是错误消息所说的。在你的系统上检查manprintf
,看看该怎么做。嗨,亚当,这是OS X Lion,使用mac终端你可以安装GNU Findutill。我猜这是因为我在OS X终端上遵循linux手册!谢谢大家!stackoverflow社区太棒了,希望我也能尽快开始贡献@user1020069:我建议更新您的姓名。@bukzor同样,您知道如何在没有-printf选项(我没有)的情况下执行以下操作吗?-->找到-printf“%p(%s,%Tb%Td%TY%TH:%TM)\n基本上我也希望列出大小和日期/时间。