我在使用这种命名约定命名的文件夹中有数百个文本文件: Bandname1 - song1.txtBandname1 - song2.txtBandname2 - song1.txtBandname2 - song2.txtBandname2 - song3.txtBandname3 - song1.txt..etc. 我想为不同的乐队创建
Bandname1 - song1.txt Bandname1 - song2.txt Bandname2 - song1.txt Bandname2 - song2.txt Bandname2 - song3.txt Bandname3 - song1.txt ..etc.
我想为不同的乐队创建文件夹,并根据文本文件移动到这些文件夹中.我怎么能用bash,perl或python脚本实现这个目的?
gregseth的答案将起作用,只需用xargs替换trim.你也可以通过使用mkdir -p消除if测试,例如:for f in *.txt; do band=$(echo "$f" | cut -d'-' -f1 | xargs) mkdir -p "$band" mv "$f" "$band" done
严格来说,甚至不需要修剪或xargs,但xargs至少会删除任何额外的格式,所以它不会受到伤害.