我有以下问题。我想打印几个文件的内容。 每个文件都在不同的目录中,并且具有相同的名称。
/home/User1/data.txt
/home/User2/data.txt
/home/User3/data.txt
每个文件都包含单个字符串。我想实现以下输出:
User1 string_from_data.txt
User2 string_from_data.txt
User3 string_from_data.txt
我尝试使用以下表达:
find . -iname "data.txt" | xargs cat
但它只返回每个data.txt的内容
string_from_data.txt
string_from_data.txt
string_from_data.txt
如何正确编写?
答案 0 :(得分:0)
find . -iname "file*" -exec sh -c 'dirname $1 | xargs basename; cat $1' _ {} \;