-1

команда:

echo "define(`SMART_HOST',`smtp.server.ac.in')" >>/etc/mail/sendmail.mc

Выход :

-bash: command substitution: line 1:
 unexpected EOF while looking for matching `''
-bash: command substitution: line 2: 
syntax error: unexpected end of file

2 ответа2

2

Ваша команда не выполняется, потому что Bash пытается интерпретировать "` ". Добавьте «\», и это будет работать:

echo "define(\`SMART_HOST',\`smtp.server.ac.in')" >>/etc/mail/sendmail.mc

Кстати: заголовок, содержание, тег вашего поста - это три разные темы.

Еще некоторые подробности: Bash будет обрабатывать все, что заключено в двойные кавычки (""), как одну строку, а также заменять переменные их содержимым, выполнять код внутри обратных кавычек ("` ") и так далее.

0

Похоже, что вы получили эту команду из руководства этого сайта или что-то подобное. Эта команда не волшебство; все, что делает эта команда, говорит Bash добавить - через >> - следующий текст:

define(`SMART_HOST',`smtp.server.ac.in')

До конца этого файла:

/etc/mail/sendmail.mc

Если этот >> добавляющий метод душит вещи, альтернативный метод установки этого значения состоит в том, чтобы просто открыть /etc/mail/sendmail.mc в вашем любимом терминальном текстовом редакторе - например, nano - и добавить / редактировать, который define() вот так вот:

nano /etc/mail/sendmail.mc

Затем просто добавьте / отредактируйте / добавьте это define( SMART_HOST ', smtp.server.ac.in') в этот файл, выполните остальные шаги этого учебного руководства - или любого другого руководства, которое вы используете - и вы должны быть в состоянии пойти ,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .