我在 Linux 的一个目录中有几个文件,如下所示:
John Smith-data.txt
Peter Walker-address.txt
...
我想要一个脚本来读取这些文件名并为文件名中的每个名称创建一个目录,即
John Smith
Peter Walker
如果我这样做
for name in `ls | awk -F - '{print $1}'`; do mkdir $name; done
创建了以下目录
John
Smith
Peter
Walker
通过做
for name in `ls | awk -F - '{print $1}'`; do mkdir "$name"; done
我得到了相同的结果
然后,做
for name in "`ls | awk -F - '{print $1}'"`; do mkdir "$name"; done
只创建一个名为:
John Smith Peter Walker
最后,如果我输入
for name in "`ls | awk -F - '{print $1}'"`; do mkdir $name; done
我又明白了
John
Smith
Peter
Walker
有什么想法吗?如何使用引号 ""
?
提前致谢
泽维尔
最佳答案
目前还不完全清楚你想要什么,但也许:
for i in *.txt; do mkdir "${i%-*}"; done
关于linux - 从具有多个单词的文件名创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15347988/