I would like to move files in existing directory files containing specific content to an existing or new directory and subdirectory by writing a script called fruit in ~/bin that moves them to dir/subdir.
For example, I have many regular files in existing directory files with name file1 file2 file3 .... file100.
ls:
file1
file2
file3
file4
...
file100
The contents of the files are:
cat file1
apple 1
789098
cat file2
orange 2
389342
cat file3
pear 1
678034
cat file4
grapes 3
123432
cat file5
apple 3
342534
cat file6
apple 3
234298
I would like to move files that have the same first line field1 content to a new directory with the same name as field1 while keeping the file name unchanged.
- that is
file1,file5,file6go toapple file2goes toorangefile3goes topear- and so on
ls:
apple pear grapes orange etc ...
./apple:
file1 file5 file6
./pear:
file3
/orange:
file2
And then I would like to create a new subdirectory and move files that have the same first line field2 content to that subdirectory.
- under directory
apple,file1will go to a subdirectory1,file5will go to a subdirectory3,file6will go to a subdirectory3 - under directory
orange,file2will go to a subdirectory2 - under directory
pear,file3will go to a subdirectory1 - and so on
After sorting and moving, the files should be sorted to something like below:
ls:
apple pear grapes orange etc ...
./apple:
1 3
./apple/1:
file1
./apple/3:
file5 file6
./orange:
2
./orange/2:
file2
./pear
1
./pear/1
file3
How can I loop through all the files to move them to the suitable directory and subdirectory accordingly in shell with vi editor?