В чем разница между «и»?

Я попытался создать текстовый файл в сценарии bash.

Команда echo охватывает несколько строк и имеет несколько двойных кавычек «».

 #!/bin/bash echo "blabla bla bla bla "blabla" bla bla " bla bla bla" and so on and so on bla bla blu bla "bla bla bla " bla bla" > /root/bin/bla 

Есть много двойных кавычек "" в команде echo что нежелательно.

И я сделал

 #!/bin/bash echo 'blabla bla bla bla "blabla" bla bla " bla bla bla" and so on and so on bla bla blu bla "bla bla bla " bla bla' > /root/bin/bla 

Я задавался вопросом, есть ли разница между двойной цитатой «и одинарной кавычкой»,

Какой из них имеет более высокий приоритет? Это просто факт, что они визуально различны?

One Solution collect form web for “В чем разница между «и»?”

Из руководства bash :

3.1.2.2 Отдельные кавычки

Закрывающие символы в одинарных кавычках ('' ') сохраняют буквальное значение каждого символа в кавычках. Одинарная кавычка может отсутствовать между одинарными кавычками, даже если ей предшествует обратная косая черта.

3.1.2.3 Двойные котировки

Закрывающие символы в двойных кавычках ('' ') сохраняют буквальное значение всех символов в кавычках, за исключением' $ ',' `',' \ ', и, когда расширение истории включено,'! '. символы '$' и '`' сохраняют свое особое значение в двойных кавычках (см. раздел« Расширения оболочки »). Обратная косая черта сохраняет свое особое значение только тогда, когда следует один из следующих символов:« $ »,« »,« », \ 'или новой строки. В двойных кавычках удаляются обратные косые следы, сопровождаемые одним из этих символов. Обратные косые черты, предшествующие символам без особого значения, остаются неизмененными. Двойная кавычка может быть заключена в двойные кавычки, предшествуя ей обратным слэшем. Если включено, расширение истории будет выполняться, если только '!' появляется в двойных кавычках, с помощью обратной косой черты. Обратная косая черта, предшествующая символу '!' не удаляется. Специальные параметры «*» и «@» имеют особое значение в двойных кавычках (см. Раздел «Расширение параметров оболочки»).

Вот некоторые практические демонстрации вышесказанного:

  • Двойные кавычки позволяют оценивать разложения параметров, но одинарные кавычки:
 $ var=foo $ echo "$var" foo $ echo '$var' $var 
  • Двойные кавычки позволяют оценивать обратные слэши, но одинарные кавычки:
 $ echo "\\" \ $ echo '\\' \\ 
  • Двойные кавычки позволяют оценивать подстановки команд ( $( , ` ), но одинарные кавычки:
 $ echo "$(echo bar)" bar $ echo '$(echo bar)' $(echo bar) 
  • сравнить файлы по строкам и создать новое одно bash-программирование
  • Что я должен рассмотреть, чтобы написать сценарий, который реагирует на нажатие клавиши?
  • чтение из файла и изменение его шаблона в массив?
  • Экстра% в выходе скрипта awk
  • Как добавить аудиофайл в сценарий оболочки
  • Найти и заменить содержимое файла
  • Как убить процесс, выполняемый в определенном скрипте
  • Как вызвать URL-адрес службы из сценария оболочки bash параллельно?
  • автоматизация конфигурации CentOS 7 с использованием сценариев оболочки
  • Копировать только Конкретный текст файла в другой
  • Почему не работает: while true; do "$ my_command"; сон 1; сделанный
  • Выполнить все файлы в списке
  • Linux и Unix - лучшая ОС в мире.