Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – 如何在bash上使用filetype将文件排序到文件夹中(使用’file’命令)?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

恢复后我有成千上万的文件没有扩展(主要是图片).我需要按文件类型将它们分类到单独的文件夹中(必须在排序过程中创建文件夹).我可以使用“file”命令在 linux中确定filetype.有人有bash脚本吗? 例如:初始目录包含文件:001,002,003,004.排序后应为3个目录: ‘jpeg’包含001.jpg,003.jpg; ‘tiff’包含002.tiff,’others’包含004.
恢复后我有成千上万的文件没有扩展(主要是图片).我需要按文件类型将它们@L_944_4@到单独的文件夹中(必须在排序过程中@L_618_6@夹).我可以使用“file”命令在 linux中确定filetype.有人有bash脚本吗?

例如:初始目录包含文件:001,002,003,004.排序后应为3个目录:
‘jpeg’包含001.jpg,003.jpg; ‘tiff’包含002.tiff,’others’包含004.

解决方法

此答案不会为每个文件多次执行文件命令,这是不必要的
file  -N --mime-type -F"-&-" * | awk -F"-&-" 'BEGIN{q="\047"}
{
  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 – 如何在bash上使用filetype将文件排序到文件夹中(使用’file’命令)?全部内容,希望文章能够帮你解决linux – 如何在bash上使用filetype将文件排序到文件夹中(使用’file’命令)?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。