我想按名称搜索文件并在其上运行python脚本,最后将输出打印到包含该文件的目录。结构看起来像
dir_a / common.txt
dir_b / common.txt
dir_c / common.txt
到目前为止,我想出了
find . -maxdepth 2 -name "common.txt" -exec cat "{}" \; | ~/myscript.py
myscript.py打印到stdout。但是如何将输出重定向到
dir_a / out.txt
dir_b / out.txt
dir_c / out.txt
答案 0 :(得分:0)
也许是小脚本runmypy.sh
:
#!/bin/bash
topdir="${1:-.}"
while IFS= read -r -d '' file; do
dir=$(dirname "$file")
/path/to/myscript.py < "$file" >"$dir/out.txt"
done < <(find "$topdir" -maxdepth 2 -type f -name "common.txt" -print0)