У меня есть переменная настройки, как это:
SSH_EXEC="ssh -X -o ControlPath=~/.ssh/master-$$ -o ControlPersist=60"
Рассматриваемый параметр -X
, потому что если я затем вызываю эту команду в моем локальном сценарии
$SSH_EXEC user@server "./server_script.sh $aFile"
который в двух словах делает следующее:
if [ -e /path/"$1".name ] || [ -e /path/"$1" ]
then
do something
else
error
echo "/path/"$1".name"
exit
fi
Все работает! Но если я заменю -X
на -t
, мой server_script
завершится с ошибкой в else
тесте. Я бы предпочел не использовать x11, но я не уверен, какая разница в том, что в одном случае происходит сбой, а в другом - переход.
РЕДАКТИРОВАТЬ
Поэтому я просто решил больше проблем и решил отобразить значение /path/$1.name
на сервере, и оно искажено. Если мое имя $aFile
оказалось hello.name
результат эха показывает .nameello
а также освобождает начало пути, когда я использую -t
вместо -X
.
Что может быть причиной искажения моих переменных?