sh 用于转换图像颜色的Bash脚本
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 用于转换图像颜色的Bash脚本相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env bash
echo "Total arguments: $#"
if [ $# -ne 4 ]; then
echo "This script requires 4 arguments. Sample usage:"
echo "sh script.sh [fromHexColor] [toHexColor] [complete srcPath without trailing slash] [complete destPath without trailing slash]"
echo "sh script.sh 7282d9 2B5676 /src/path /dest/path"
echo -e "------------------\n"
exit 1
fi
fromColor="#$1"
toColor="#$2"
inputDir=$3
fileType="png"
resultDir=$4
for file in ${inputDir}/**/*.${fileType} ${inputDir}/*.${fileType}; do
echo "File: ${file}"
# get file name from input path
filename=`echo $(basename ${file})`
echo "Filename: ${filename}"
# get relative base directory from input path
filedir=`echo $(dirname ${file})`
echo "File dir: ${filedir}"
relativeBaseDir=`echo ${filedir#${inputDir}}`
echo "Relative base: ${relativeBaseDir}"
# create relative base directory from result path if it is not empty
outputDir="${resultDir}"
if [ ${#relativeBaseDir} -eq 0 ]; then
echo "empty"
else
outputDir=${resultDir}${relativeBaseDir}
echo "creating directory $outputDir"
mkdir -p ${outputDir}
fi
# perform convert command
convert ${file} -fuzz 30% -fill "$toColor" -opaque "$fromColor" ${outputDir}/${filename};
echo -e "${outputDir}/${filename}\n"
done
以上是关于sh 用于转换图像颜色的Bash脚本的主要内容,如果未能解决你的问题,请参考以下文章
sh Bash脚本根据exif数据和文件时间戳移动图像
sh Cleaner.sh - 用于清理目录内容的Bash脚本
sh 用于执行构建的bash脚本
sh 用于执行构建的bash脚本
sh bash插入用于编写脚本的哈希符号
sh 用于快速设置Golang环境的Bash脚本