Reading a list with A and B data in 2 columns, iterating row by row, I was createding a series of direcoties with the following logic. read first row, data A and B, create folder A and subfolder B ( mkdir -p A/B ) and so on. Well, now, I need to create a corresponding file B.txt ( i.e ) inside the proper subfolder B.
By example, y made some proofs with a single file with the next content.
col1 col2 a b c d
I created the foler sructure with the next line:
awk 'NR>1{system("mkdir -p "$1"/"$2)} my_file.txt
The result was:
$ tree a |_b c |_d
Now I would like to invoke that directory path, to move or create for example a file named b.txt to the directory with the same name, and so be able to do it with the whole tree, but I could not do it yet
My spected result.
$ tree a |_b |_b.txt c |_d |_d.txt
Any idia?
Thanks
Advertisement
Answer
perhaps better to do in bash
directly since there is nothing requires 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