Linux下使用Shell根据txt文件批量创建目录

在Windows下用记事本编辑的.sh文件直接传到Linux中会有格式问题,在Linux下每行后边会有个^M,会影响Shell脚本运行。文字较少,建议直接在Linux下编辑。


newFolders.sh文件内容

!/bin/bash
input="目录名称txt文件路径"

cd 创建目录目标路径
while IFS= read line
do
  mkdir ${line:0:15}
done < "$input"

newFolders.sh文件示例

!/bin/bash
input="/home/root/aaa.txt"

cd /home/test
while IFS= read line
do
  mkdir ${line:0:15}
done < "$input"

运行后会在/home/test目录(事先建好的)中创建以aaa.txt中每行前15个字符为名的子目录


Shell解释

循环读取文件的每一行
每一行的字符串从第0(起始)位开始取15(长度)个字符,以此为名字创建目录
(示例目录名长度均为15)


运行Shell脚本

1. 改变文件权限

chmod +x newFolders.sh

2. 运行

./newFolders.sh

你可能感兴趣的:(Linux)