2013-05-09 39 views
0

我运行下面的命令来获得一个目录列表:庆典 - 填充找到结果

find ./../ \ 
    -type f -newer ./lastsearchstamp -path . -prune -name '*.txt' -o -name '*.log' \ 
    | awk -F/ '{print $NF "       - " $FILENAME}' 

有一些方法可以让我格式化2列输出左缩进布局,使输出看起来清晰可辨?

上面的命令总是在文件名和路径之间添加一个恒定的间距。

预期输出:

abc.txt   /root/somefolder/someotherfolder/ 
helloworld.txt  /root/folder/someotherfolder/ 
a.sh    /root/folder/someotherfolder/scripts 
+0

您能否向我解释'$ FILENAME'应该是什么? – TrueY 2013-05-09 15:55:53

+1

'man find'并查看'-printf'选项,您可能不需要awk或其他任何工具。 – 2013-05-09 17:55:26

回答

0

我对这种事情很好的工具是column -t。您只需将该命令添加到管道末端:

find ... | awk -F/ '{print $NF " - " $FILENAME}' | column -t 
+1

棒极了!非常感谢@sudo_O – Xsudo 2013-05-10 11:55:09