Я пытаюсь загрузить свои скриншоты на сервер сразу после скриншота с помощью скрипта, он работает, когда я запускаю его с ./script.sh
, но когда я использую его с автоматизатором, вывод неправильный. Предполагается поместить в буфер обмена ссылку в следующем формате: https://i.neilrichter.com/1ab5ty.png
(6 буквенно-цифровых символов).
#/bin/zsh
generate_uid() {
NEWUID=$(openssl rand -base64 500 | head -c 6);
CODE=$(curl -sI https://i.neilrichter.com/$NEWUID.png | head -n 1|cut -d$' ' -f2);
if [ $CODE == 200 ];then
echo $(generate_uid);
else
echo $NEWUID;
fi
}
FILENAME=$(generate_uid);
screencapture -o -i /tmp/$FILENAME.png;
scp /tmp/$FILENAME.png root@host:/path/to/folder;
echo "https://i.neilrichter.com/$FILENAME.png" | pbcopy;
rm /tmp/$FILENAME.png;
Я не использовал tr
в своей оболочке, потому что у некоторых пользователей возникли проблемы в MacOS с возвратом tr illegal Byte sequence
Вывод https://i.neilrichter.com/.png
...
Похоже, он не может генерировать строку