目录
ImageMagick 命令无法在 Powershell 中运行,但在 cmd 窗口中运行没有问题
深入了解 ImageMagick 命令中的引用和引用
不同环境的命令语法的具体示例
跨-平台命令调用
首页 后端开发 Golang 为什么我无法在 Powershell 中运行复杂的 ImageMagick 命令,但它们可以在 CMD 中运行?

为什么我无法在 Powershell 中运行复杂的 ImageMagick 命令,但它们可以在 CMD 中运行?

Oct 25, 2024 am 08:57 AM

Why Can't I Run Complex ImageMagick Commands in Powershell, But They Work in CMD?

ImageMagick 命令无法在 Powershell 中运行,但在 cmd 窗口中运行没有问题

在尝试使用 ImageMagick 命令时,用户在 Powershell 窗口中执行它们时遇到了挑战。这些命令在 cmd 窗口中无缝运行。尝试通过在括号前添加反斜杠来解决该问题也没有成功。调查显示,magick指令确实包含在环境变量中。

尽管无法在Powershell中运行复杂的命令,但简单的命令执行没有问题。这表明问题出在复杂的命令上。

深入了解 ImageMagick 命令中的引用和引用

ImageMagick 提供了大量的选项和功能,因此在使用时需要仔细注意引用和转义。在各种环境中执行命令,包括:

  • Bash/Unix/Linux Shell: Bash 解释特定字符,例如 # 表示十六进制颜色,括号表示子进程,需要转义或替代语法。
  • Windows CMD32/BATCH 文件: 括号、小于和大于符号以及百分号等字符需要转义,以防止与 shell 语法混淆。
  • Powershell:括号和行连续字符需要使用反引号转义才能正确执行命令。

不同环境的命令语法的具体示例

Bash :

magick IMAGE1.PNG \
   \( IMAGE2.PNG -resize 50% -fill '#ff0000' -colorize 100% \) \
  -composite -transparent 'hsl(40,50,60)' result.png
登录后复制

Windows CMD32:

magick IMAGE1.PNG ^
   ( IMAGE2.PNG -resize 50%% -fill "#ff0000" -colorize 100% ) ^
  -composite -transparent "hsl(40,50,60)" result.png
登录后复制

Powershell:

magick IMAGE1.PNG `
   `( IMAGE2.PNG -resize 50% -fill "#ff0000" -colorize 100% `) `
  -composite -transparent "hsl(40,50,60)" result.png
登录后复制

跨-平台命令调用

为了避免因特定于环境的语法限制而引起的潜在问题,独立于平台的方法涉及利用脚本。命令可以包含在扩展名为“.mgk”的文件中,ImageMagick 可以直接执行它,绕过 shell 解释和引用问题:

script.mgk:

-size 640x480 xc:#ffff00
( foreground.png -resize 50% )
-gravity center -composite -write result.png
登录后复制

调用:

magick -script script.mgk
登录后复制

通过采用此技术,shell 对脚本中使用的符号和字符保持不可知,从而确保跨不同环境的无缝执行。

以上是为什么我无法在 Powershell 中运行复杂的 ImageMagick 命令,但它们可以在 CMD 中运行?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
两个点博物馆:所有展览以及在哪里可以找到它们
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
两个点博物馆:所有展览以及在哪里可以找到它们
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Go语言包导入:带下划线和不带下划线的区别是什么? Go语言包导入:带下划线和不带下划线的区别是什么? Mar 03, 2025 pm 05:17 PM

Go语言包导入:带下划线和不带下划线的区别是什么?

如何编写模拟对象和存根以进行测试? 如何编写模拟对象和存根以进行测试? Mar 10, 2025 pm 05:38 PM

如何编写模拟对象和存根以进行测试?

Beego框架中NewFlash()函数如何实现页面间短暂信息传递? Beego框架中NewFlash()函数如何实现页面间短暂信息传递? Mar 03, 2025 pm 05:22 PM

Beego框架中NewFlash()函数如何实现页面间短暂信息传递?

如何定义GO中仿制药的自定义类型约束? 如何定义GO中仿制药的自定义类型约束? Mar 10, 2025 pm 03:20 PM

如何定义GO中仿制药的自定义类型约束?

如何使用跟踪工具了解GO应用程序的执行流? 如何使用跟踪工具了解GO应用程序的执行流? Mar 10, 2025 pm 05:36 PM

如何使用跟踪工具了解GO应用程序的执行流?

我如何使用衬里和静态分析工具来提高GO代码的质量和可维护性? 我如何使用衬里和静态分析工具来提高GO代码的质量和可维护性? Mar 10, 2025 pm 05:38 PM

我如何使用衬里和静态分析工具来提高GO代码的质量和可维护性?

Go语言如何便捷地写入文件? Go语言如何便捷地写入文件? Mar 03, 2025 pm 05:15 PM

Go语言如何便捷地写入文件?

Go语言中如何将MySQL查询结果List转换为自定义结构体切片? Go语言中如何将MySQL查询结果List转换为自定义结构体切片? Mar 03, 2025 pm 05:18 PM

Go语言中如何将MySQL查询结果List转换为自定义结构体切片?

See all articles