读取包含2列A和B数据的列表,逐行迭代,我使用以下逻辑创建了一系列负债。 读取第一行,数据A和B,创建文件夹A和子文件夹B(mkdir -p A / B),依此类推。 好吧,现在,我需要在正确的子文件夹B内创建一个对应的文件B.txt(即)。
例如,y用一个带有下一个内容的文件做了一些证明。
col1 col2
a b
c d
我用下一行创建了foler结构:
awk 'NR>1{system("mkdir -p "$1"/"$2)} my_file.txt
结果是:
$ tree
a
|_b
c
|_d
现在,我想调用该目录路径,例如将名为b.txt的文件移动或创建到具有相同名称的目录,这样就可以对整个树进行处理,但是我做不到还可以
我的预期结果。
$ tree
a
|_b
|_b.txt
c
|_d
|_d.txt
有没有我?
谢谢
答案 0 :(得分:0)
最好直接在bash
中进行,因为没有任何要求awk
$ while read -r a b;
do mkdir -p "$a/$b"; touch "$a/$b/$b.txt";
done < <(sed 1d file)
$ tree
.
├── a
│ └── b
│ └── b.txt
├── c
│ └── d
│ └── d.txt
└── file
4 directories, 3 files