![从目录内容创建具有特定格式的文件](https://linux22.com/image/36669/%E4%BB%8E%E7%9B%AE%E5%BD%95%E5%86%85%E5%AE%B9%E5%88%9B%E5%BB%BA%E5%85%B7%E6%9C%89%E7%89%B9%E5%AE%9A%E6%A0%BC%E5%BC%8F%E7%9A%84%E6%96%87%E4%BB%B6.png)
我正在使用 Solaris 和 csh。
其中$home/test
有五个文件:a.txt
、b.txt
、c.txt
和d.txt
.e.txt
如果我跑
% find $home/test/ -type f -print > ../filenames.txt
该文件将如下所示:
/home/me/test/a.txt
/home/me/test/b.txt
…
/home/me/test/e.txt
我需要␣none
在每一行后面添加,以便我可以使用文本文件作为另一个脚本的输入。 IE:
/home/me/test/a.txt none
…
/home/me/test/e.txt none
这个简单的问题给我带来了问题。
答案1
这应该可以在 bsd 上运行find
find $home/test/ -type f -print -exec echo '{} none' \; > ../filenames.txt
答案2
如果您仅在目录中查找$home/test
(而不是在其下面的树中查找),则此循环也将起作用:
for file in $home/test/*; do
[ -f "$file" ] && echo "$file none"
done > ../filenames.txt