Попробуйте трюк с одинарными и двойными кавычками для вашего предложения:
echo '#!/bin/bash
ssh -t -t server-a.com "
cd /var/
irb
..etc
"
' > /usr/local/bin/bash_a.sh
chmod a+rx /usr/local/bin/bash_a.sh
Внутри одинарных кавычек оболочка обрабатывает данные без изменений.
Внутри двойных кавычек оболочка раскрывает переменные $, обратную косую черту, обратные косые черты и всякие разные вещи. Поэтому обычно используйте одинарные кавычки, где это возможно.
Тем не менее, внутри одинарных кавычек вы не можете легко использовать одинарные кавычки, тогда как двойные кавычки внутри одинарных кавычек легко.
Внутри двойных кавычек вы можете использовать двойные кавычки, но вы должны избегать их с помощью обратной косой черты.
Так что echo "abc\"def\""
печатает abc"def"
.
Внутри двойных кавычек вы также можете использовать одинарные кавычки, но они не останавливают все это расширение.
Так что echo "abc'def'"
печатает abc'def'
.
Вы можете использовать одинарные кавычки внутри одинарных кавычек, но вы должны ввести:echo 'abc'\''def'\''hij'
которая печатает abc'def'hij
.