当前位置: 首页 > news >正文

在Linux下将PNG和JPG批量互转的四种方法

计算机术语中,批处理指的是用一个非交互式的程序来执行一序列的任务的方法。这篇教程里,我们会使用 Linux 命令行工具,并提供 4 种简单的处理方式来把一些 .PNG 格式的图像批量转换成 .JPG 格式的,以及转换回来。

计算机术语中,批处理指的是用一个非交互式的程序来执行一序列的任务的方法。这篇教程里,我们会使用 Linux 命令行工具,并提供 4 种简单的处理方式来把一些 .PNG 格式的图像批量转换成 .JPG 格式的,以及转换回来。

虽然所有示例中我们使用的都是 convert 命令行工具,但是您也可以使用 mogrify 命令来达到同样的效果。

convert 命令的语法如下:

convert 输入选项 输入文件 输出选项 输出文件

morify 为:

mogrify 选项 输入文件

注意:在使用 mogrify 命令时,默认情况下源图像文件会被转换后的新文件覆盖掉,您可以使用明确的操作选项来禁止覆盖,具体的选项可以在手册页中查询得到。

下面是把所有 .PNG 格式图像批量转换为 .JPG 格式的各种实现方式。如果想把 .JPG 转换为 .PNG 格式,也可使用这些命令,按需修改。

1. 使用 ls 和 xargs 命令来转换 PNG 和 JPG

ls 命令 可以列出所有的 png 图像文件, xargs 使得可以从标准输入构建和执行 convert 命令,从而将所有.png 图像转换为 .jpg 图像。

----------- 从 PNG 转换到 JPG -----------

$ ls -1 *.png | xargs -n 1 bash -c 'convert "$0" "${0%.png}.jpg"' 

----------- 从 JPG 转换到 PNG -----------

$ ls -1 *.jpg | xargs -n 1 bash -c 'convert "$0" "${0%.jpg}.png"'

关于上面命令选项的说明:

-1 – 告诉 ls 每行列出一个图像名称的选项标识
-n – 指定最多参数个数,例子中为 1
-c – 指示 bash 运行给定的命令
${0%.png}.jpg – 设置新转换的图像文件的名字,% 符号用来删除源文件的扩展名

2. 使用 for 循环命令来转换 PNG 和 JPG

#!/bin/bash 
#convert 
for image in *.png; do convert  "$image"  "${image%.png}.jpg" echo “image $image converted to ${image%.png}.jpg ” 
done 
exit 0 
http://www.lryc.cn/news/94668.html

相关文章:

  • Scala中使用 break 和 continue
  • 【全栈开发指南】打包sentinel-dashboard镜像推送到Docker Hub镜像仓库
  • 【数据可视化】SVG(一)
  • linux 系统errno 对应参考及代码
  • PowerShell快速ssh
  • 从php5.6到golang1.19-文库App性能跃迁之路
  • 成功解决 AttributeError: ‘Field‘ object has no attribute ‘vocab‘
  • ikbc键盘2.4G接收器丢失,重新对码
  • STM32 Proteus仿真医用仓库环境控制系统紫外线消毒RS232上传CO2 -0066
  • Docker(二)之容器技术所涉及Linux内核关键技术
  • 计算机网络_ 1.3 网络核心 (数据交换_电路交换)
  • Kafka高性能集群部署与优化
  • Lucene介绍与入门使用
  • 【最短路+状压】CF1846 G
  • vue+elementui实现英雄联盟道具城
  • ruby注释
  • 2023(WAIC)智能驾驶科技峰会丨拓数派大模型下的数据计算系统,助力汽车智能化产业数据增值
  • 牛客周赛 Round 2
  • Git 命令提交和分支控制
  • 2023 node 接入腾讯云短信服务,实现发送短信功能
  • Devops系列四(使用argocd部署java应用到k8s容器)
  • 如何在Microsoft Excel中进行不连续区域批量填充
  • k8s+springboot+CronJob 定时任务部署
  • Spring5 中更优雅的第三方 Bean 注入
  • Yolov5-Face 原理解析及算法解析
  • 通俗易懂讲解CPU、GPU、FPGA的特点
  • PIC18 DataRAM 笔记
  • 【FFMPEG】AVFilter使用流程
  • 爬虫入门06——了解cookie和session
  • Ubuntu 的移动梦醒了