У меня есть сценарий bash для загрузки данных с веб-сайта. Для этого мне нужно передать имя пользователя и пароль, используя java-клиент для веб-сайта. У моего пароля есть специальный символ, который вызывает проблемы. Я пробовал обычные решения, но никто не работает.bash: как передать пароль, содержащий специальные символы
#!/bin/sh
#$ -cwd
MYPASSWORD='password&123'
java -jar client.jar -p username $MYPASSWORD file.gz
Пробовал использовать \ либо непосредственно в команде, либо используя переменную. Но это не сработало. Ошибка входа!
MYPASSWORD=password\&123
java -jar client.jar -p username $MYPASSWORD file.gz
Пробовал "или". Ошибка входа.
MYPASSWORD='password&123'
java -jar client.jar -p username "\"$MYPASSWORD\"" file.gz
Также попробовал, не повезло. MYPASSWORD = 'password' "&" '123'
Любые предложения были бы наиболее полезными. Сброс пароля на этом веб-сайте также кажется проблематичным.
может попробовать тройную простую цитату ('' ') для включения? – F4240
Можете ли вы использовать эту программу java для загрузки файла без сценария bash? Если программа не работает вне сценария, она не будет работать внутри скрипта. –
Что означает F4240: вы пытались '$ {MYPASSWORD}'? – GhostCat