bash脚本:如何在不同的行显示输出

时间:2015-01-22 19:04:15

标签: bash shell

我尝试使用一行代码来解决问题

echo $(find . -maxdepth 1 -type f -newer $1  | sed 's,\.\/,,g')

这将打印当前文件夹中比输入文件更新的所有文件。但它只用一行打印出来:

file1 file2 file3 file4....

如何在一行中显示每个文件名,如:

file1
file2
file3
...

这似乎很简单,但我一直在寻找并且没有解决方案。 提前谢谢。

2 个答案:

答案 0 :(得分:6)

摆脱echo$(...)

find . -maxdepth 1 -type f -newer "$1" | sed 's,\.\/,,g'

如果您有GNU查找,则可以使用sed操作替换-printf

find . -maxdepth 1 -type f -newer "$1" -printf '%P\n'

答案 1 :(得分:0)

将其传递给tr

... | tr " " "\n"