все еще получает навык сценариев bash...
у меня есть функция, которая изменяет размер изображений и вычисляет, сколько масштабировать его на основе размера файла. Мне нужно передать этот процент в качестве аргумента команде convert, но я не могу удалить возврат из конца строки.
когда я запускаю функцию, я получаю:
2.362413
%
Как я могу объединить их в одну строку без символа возврата или новой строки? Трубопровод в tr с помощью "r" или "d", похоже, не работа.
shrinkImg() {
FILENAME=$(basename "")
EXTENSION="${FILENAME##*.}"
sz=$(stat -c '%s' )
PRODUCT=echo bc <<< "scale = 10; ( 100 / ( $sz / 350000))";
PRODUCT=echo ${PRODUCT} | tr -d 'r'
PERCENT=%
TARGET=echo $TARGET
TARGET=$PRODUCT$PERCENT
echo $TARGET;
if [ $sz -ge 350000 ] && [ $EXTENSION == 'png' ] ; then
convert -resize $TARGET
elif [ $sz -ge 350000 ] && [ $EXTENSION == 'PNG' ] ; then
convert -resize $TARGET
elif [ $sz -ge 350000 ] && [ $EXTENSION == 'jpg' ] ; then
convert -resize $TARGET
elif [ $sz -ge 350000 ] && [ $EXTENSION == 'JPG' ] ; then
convert -resize $TARGET
fi
}
также любые другие советы будут оценены!