将文件复制到相应的目标文件夹
Copy files to their corresponding destination folders
我在一个文件夹中有许多文件,它们具有不同的扩展名 (.txt
、.ascii
、.mat
)。我想将它们移动到与文件名相同的目标文件夹。
例如:
我有 a.txt, a.ascii,
b.txt, b.ascii, b.mat
这样的文件。
我想先以 a
和 b
的名称创建文件夹,然后我想将文件 a.txt,a.ascii
移动到文件夹 a
并将 b.txt,b.ascii,b.mat
移动到文件夹 b
.
我尝试了如下代码。但是我需要一种自动创建文件夹并将文件移动到其中的方法。
#!/bin/sh
mkdir a b
for file in $(<list.txt)
do
cp "$file" a
done
似乎这个 Bash
脚本可以完成这项工作
#!/usr/bin/env bash
for file in $(<list.txt); do
dirn="${file%.*}"
mkdir -p "$dirn"
cp "$file" "$dirn"
done
我在一个文件夹中有许多文件,它们具有不同的扩展名 (.txt
、.ascii
、.mat
)。我想将它们移动到与文件名相同的目标文件夹。
例如:
我有 a.txt, a.ascii,
b.txt, b.ascii, b.mat
这样的文件。
我想先以 a
和 b
的名称创建文件夹,然后我想将文件 a.txt,a.ascii
移动到文件夹 a
并将 b.txt,b.ascii,b.mat
移动到文件夹 b
.
我尝试了如下代码。但是我需要一种自动创建文件夹并将文件移动到其中的方法。
#!/bin/sh
mkdir a b
for file in $(<list.txt)
do
cp "$file" a
done
似乎这个 Bash
脚本可以完成这项工作
#!/usr/bin/env bash
for file in $(<list.txt); do
dirn="${file%.*}"
mkdir -p "$dirn"
cp "$file" "$dirn"
done