我从研究中获得了这些文件,并且某些文件(样本)来自同一组,因此我为每个组创建了一个文件夹,我想将文件移到不同的文件夹中。
我有一个表和一个列表,其中将每个样品(文件名)与其对应的组(目录名)相关联。如何使用bash脚本获取每个样本(第一列)并将其放入其组目录(第二列)?
答案 0 :(得分:0)
这种情况:
文件:带有文件和目录列表的test.txt:
file1.txt;dir1
file2.txt;dir2
file3.txt;dir3
包含文件的目录:
./dir1
./dir2
./dir3
./file1.txt
./file2.txt
./file3.txt
./script.sh
./test.txt
bash脚本代码:
cat test.txt |
while read line; do
IFS=';'
set - $line
mv $1 $2/
done
使用bash脚本后的目录结构:
bash script.sh
./dir1
./dir1/file1.txt
./dir2
./dir2/file2.txt
./dir3
./dir3/file3.txt
./script.sh
./test.txt