将字符串连接到使用“find”发现的文件

时间:2017-06-13 08:05:38

标签: bash find printf

在for循环中,我找到与某个名称匹配的图像文件,然后创建这些图像文件的文本文件(每次在for循环中添加新的图像文件时,文本文件都会更新)。

find ~/grads_pics/${MODEL}/${INIT_INTDATE}/${INITHOUR}z/ -type f -name "${FILENAMES[i]}${FORECASTHOUR}hrfcst.png" -printf '%f\n' >> ~/grads_pics/${MODEL}/${INIT_INTDATE}/${INITHOUR}z/${FILENAMES[i]}".txt"

我想在这些文件名之前连接一些文本... ex:sometext $ {FILENAMES [i]} $ {FORECASTHOUR} hrfcst.png,但还是无法弄清楚如何做到这一点。我尝试在上面的代码中将'%s \ n'$ MYSTRING放在'%f \ n'之后,但命令没有产生任何输出,所以它必须是不正确的语法。

1 个答案:

答案 0 :(得分:1)

find -printf选项与C的printf函数不同。 关注手册页:man find

%s : File's size in bytes.

如何在%f

之前添加%替换%%的字符串
... -printf "${your_var//%/%%}"'%f\n'