我只想从Imagick调用一次“ identify”以减少计算时间,但是我对bash并不熟悉。当前在bash中,我有以下代码:
width=`identify -ping -format '%w' "$file"`
height=`identify -ping -format '%h' "$file"`
这很不好,因为它两次调用,下载,处理同一文件。然后我发现我实际上可以只用一个叫“识别”:
resolution=`identify -ping -format '%wx%h' "$file"`
但是如何将“ resolution”字符串变量分成两个变量。
例如:
分辨率返回:1000x500
然后我想将1000分隔为“ a”,将500分隔为“ b”
请指导使用什么命令来分隔字符串,然后我可以对其进行研究
答案 0 :(得分:1)
$ resolution=$(echo '1000x500')
$ echo "${resolution%x*}"
1000
$ echo "${resolution#*x}"
500
显然我用echo '1000x500'
代替了identify -ping -format '%wx%h' "$file"
,因为我没有后者的命令。
请参见http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_03和https://www.gnu.org/software/bash/manual/bash.html#Shell-Parameter-Expansion