linux – 如何在bash上使用filetype将文件排序到文件夹中(使用’file’命令)?
发布时间:2020-12-30 18:24:46 所属栏目:Linux 来源:互联网
导读:恢复后我有成千上万的文件没有扩展(主要是图片).我需要按文件类型将它们分类到单独的文件夹中(必须在排序过程中创建文件夹).我可以使用“file”命令在 linux中确定filetype.有人有bash脚本吗? 例如:初始目录包含文件:001,002,003,004.排序后应为3个目录:
恢复后我有成千上万的文件没有扩展(主要是图片).我需要按文件类型将它们分类到单独的文件夹中(必须在排序过程中创建文件夹).我可以使用“file”命令在 linux中确定filetype.有人有bash脚本吗? 例如:初始目录包含文件:001,002,003,004.排序后应为3个目录: 解决方法此答案不会为每个文件多次执行文件命令,这是不必要的file -N --mime-type -F"-&-" * | awk -F"-&-" 'BEGIN{q=" 47"} { o=$1 gsub("/","_",$2);sub("^ +","",$2) if (!($2 in dir )) { dir[$2] cmd="mkdir -p "$2 print cmd #system(cmd) #uncomment to use } files[o]=$2 } END{ for(f in files){ cmd="cp "q f q" "q files[f]"/"f".jpg" q print cmd #system(cmd) #uncomment to use } }' 同样,可以使用关联数组使用bash4脚本完成. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- linux – make / home / tmp noexec nodev没有单独的patiti
- SVN-钩子祥解
- BEA-141150 - An error occurred while preparing applicat
- linux – Makefile命令替换问题
- 防止linux线程被调度程序中断
- linux – sysfs_create_file()和sysfs_create_group()之间有
- linux – 在64位机器上运行32位二进制文件
- linux – 如何使用PAM检查某些用户的LDAP密码,但始终使用本
- LINUX实战:Linux下正确使用YUM和RPM安装软件
- 如何从Linux init.d / rc.d脚本中查找错误消息?
推荐文章
站长推荐
- 命令行 – zsh如何扩展globs?
- linux – 如何在debian系统上调试(慢)链接器
- 窗口放置:类似WinSplit Revolution的Linux应用程
- linux – 如何在Ubuntu 10.10中的NTFS上运行C二进
- linux-kernel – IO-APIC级别与PCI-MSI-X之间的差
- 在Redhat Enterprise Server上安装python-ldap时
- CentOS下升级Git1.7.1升级到Git2.2.1
- linux – GNU malloc_info():获得真正分配的内存
- LINUX教程:Linux文本处理三剑客之gawk
- linux – 在bash脚本中使用iperf3获取时间戳
热点阅读