我有一个包含 14 个目录的目录结构,其中包含一堆包含三列格式数据的文件(用制表符分隔)。我打算使用 find 和 awk 从每个文件中提取第二列,并使用相同的文件名但在不同的根文件夹下输出它。这是我的目录的草图。
data/all -> AA, AB, AC, AD ...(A* 是包含以 3 列格式存储数据的文件的文件夹,例如 AA100.txt、AA101.txt ...)
我希望修改后的(一列)文件具有相同的名称,但都在一个新的根目录下 data/pos(而不是 data/all/)-> AA、AB、AC、AD ...(再次, 每个包含 A*100.txt, A*101...)
我的尝试是使用 find -exec 并为其提供 awk 命令,但是我在将文件输出到正确的位置时遇到了问题。
当在数据/全部/
find * -type f -exec awk '{print$2}' '{}' > ../pos/'{}' \;
但是 {} 作为输入文件的通配符在输出文件时似乎不起作用?
我究竟做错了什么?(顺便说一句,我在 ubuntu 服务器上)