一、需求
如下:现在有如下文件夹,文件夹下有如下文件
[root@LeoLinux test]# ls -lht
总用量 4.0K
-rwxr-xr-x. 1 root root 232 3月 4 14:38 1.sh
-rw-r--r--. 1 root root 0 3月 4 14:30 Acb-3.zip
-rw-r--r--. 1 root root 0 3月 4 14:30 ADE-1.tar.gz
-rw-r--r--. 1 root root 0 3月 4 14:30 abc-2.whl
要求,将文件移动到对应的目录中,目录的名称为“-”前面的名称,并且都为小写。
二、实现
脚本编写
[root@LeoLinux test]# cat 1.sh
#!/bin/bash
for i in $(ls *whl *tar.gz *zip 2>/dev/null)
do
module_name=$(echo $i | awk -F'-' '{print $1}')
module_name=$(echo $module_name | awk '{print tolower($module_name)}')
mkdir -p $module_name
mv $i ${module_name}/
done
实现效果
[root@LeoLinux test]# ls -lht
总用量 16K
drwxr-xr-x. 2 root root 4.0K 3月 4 14:39 ade
drwxr-xr-x. 2 root root 4.0K 3月 4 14:39 acb
drwxr-xr-x. 2 root root 4.0K 3月 4 14:39 abc
-rwxr-xr-x. 1 root root 232 3月 4 14:38 1.sh