首页 > 解决方案 > 有没有办法使用 for 循环根据文件名创建目录?

问题描述

我想根据我已有的文件名创建目录。例如,假设我有:

red.txt green.txt blue.txt purple.txt orange.txt

是否有一种方法可以创建名为:

red/ green/ blue/ purple/ orange/?

我试着做:

for f in *.txt; do mkdir {$f}; done

for f in *.txt; do mkdir {$f}.txt; done

for f in *.txt; do mkdir "$f/"; done

等等等等,其变体。我无法弄清楚我做错了什么。

标签: linuxfor-loopmkdir

解决方案


这是一种仅限 bash 的方法......

for f in *txt; do mkdir ${f%.*}; done

我们在这里使用 bash 的shell 参数扩展,以防您好奇。


推荐阅读