linux – 如何在bash上使用filetype将文件排序到文件夹中(使用’
发布时间:2020-12-13 19:54:02 所属栏目: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脚本完成. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 将wget cron命令转换为curl
- linux – 轻松重新创建服务器的“状态”
- linux – 如何在bash中启用命令行开关的选项卡完成?
- sprintf snprintf的用法 可以作为linux中itoa函数的补充
- linux – 确定IP头的大小.为什么它与其他人不同?
- linux – ARMv8 – 在64位操作系统上运行传统的32位应用程序
- linux – 使用ZeroMQ的反向PUB / SUB问题
- LINUX实操:Chromebook 如何双启动:Ubuntu 17.04 GNOME 和
- linux下配置zookeeper注册中心及运行dubbo服务
- linux – EXT4性能在包含大量小文件的系统上变得非常糟糕