Вопросы с тегом «quoting»

Строки обычно отделяются кавычками, что поднимает проблему работы со строками, которые включают кавычки.

8
В чем разница между $ * и $ @?
Рассмотрим следующий код: foo () { echo $* } bar () { echo $@ } foo 1 2 3 4 bar 1 2 3 4 Это выводит: 1 2 3 4 1 2 3 4 Я использую Ksh88, но меня интересуют и другие распространенные оболочки. Если вы знаете какие-либо особенности …
73 shell  quoting  ksh  arguments 


5
Как избежать кавычек в оболочке?
У меня проблемы с экранированием символов в bash. Я хотел бы избежать одинарных и двойных кавычек при выполнении команды под другим пользователем. Для целей этого вопроса, скажем, я хочу отобразить следующее на экране: 'single quote phrase' "double quote phrase" Как я могу избежать всех специальных символов, если мне также нужно …



5
Как запустить команду, которая включает в себя перенаправление или передачу с помощью sudo?
Я пытаюсь следовать тому, что, как я полагаю, является лучшей практикой использования sudo вместо учетной записи root. Я выполняю простую операцию с файлом concat, такую ​​как: sudo echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock Это не так, как справа от ">>", он работает как обычный пользователь. Добавление дополнительных sudos также завершается неудачно (ожидаемое …

5
Передать переменную оболочки как / pattern / в awk
Имея следующее в одной из моих функций оболочки: function _process () { awk -v l="$line" ' BEGIN {p=0} /'"$1"'/ {p=1} END{ if(p) print l >> "outfile.txt" } ' } , Так что, когда называется _process $arg, $argполучает прошло , как $1и используется в качестве шаблона поиска. Это работает так, потому …
59 shell  awk  quoting  variable 

4
Как я могу использовать столбец для разделения на вкладках, а не пробелы?
Я хотел бы использовать команду Unix columnдля форматирования текста. У меня есть поля, разделенные вкладками, но внутри каждого поля также есть пробелы. columnразделители на пробелах (табуляция и пробелы). Как сделать так, чтобы столбец использовал только вкладки в качестве разделителя? Я пытался указать вкладку как разделитель, используя: cat myfile | column …

1
В чем разница между кавычками «…», «…», $ «…» и $ «…»?
Иногда я вижу сценарии использовать все эти различные способы процитировать текст: "...", '...', $'...', и $"...". Почему используется так много разных цитат? Они ведут себя по-разному или влияют на то, что я могу сделать внутри них?

4
эхо-байты в файл
Я пытаюсь подключить Rasberry Pi к некоторому дисплею, используя шину i2c. Для начала я хотел написать что-то вручную, в частности байты, в файл. Как вы пишете конкретные байты в файл? Я уже прочитал это, и я решил, что моя проблема должна быть решена примерно так echo -n -e \x66\x6f\x6f > …

2
Как скобки интерпретируются в командной строке?
Читая о том, как настроить grub, я наткнулся на статью, утверждающую, что мне нужно использовать один из следующих двух синтаксисов: echo \(hd0,0\) >> /boot/grub/grub.conf или echo '(hd0,0)' >> /boot/grub/grub.conf потому что в командной строке скобки интерпретируются особым образом. Что особенного в скобках? Как они интерпретируются?
45 bash  shell  quoting 

7
Что такое хорошая мнемоника для двойных и одинарных кавычек?
Я не делаю достаточно сценариев, чтобы помнить, не глядя, не приводят ли двойные или одинарные кавычки к замене переменной Unix. Я определенно понимаю, что происходит. У меня вопрос: есть ли у кого-нибудь трюк с памятью для того, чтобы сделать правильное правило цитирования в моей голове?

4
Как напечатать «$» в здесь-документе
Как я могу отобразить "$" в документах here в bash? Например, я хочу иметь файл с содержимым на удаленном сервере, как $ABC=home_dir. $ ssh hostname sudo -s <<EOF echo "$ABC=home_dir" > file EOF Но это будет рассматриваться как переменная. Как я могу напечатать литерал $?
42 bash  shell  quoting 

2
Нужны ли кавычки для присваивания локальной переменной?
Могу ли я безопасно пропустить кавычки в правой части локального задания? function foo { local myvar=${bar} stuff() } Я в основном заинтересован bash, но любая информация о угловых коробках в других оболочках приветствуется.

5
Как мы можем запустить команду, хранящуюся в переменной?
$ ls -l /tmp/test/my\ dir/ total 0 Мне было интересно, почему следующие способы запуска вышеуказанной команды не удаются или преуспеют? $ abc='ls -l "/tmp/test/my dir"' $ $abc ls: cannot access '"/tmp/test/my': No such file or directory ls: cannot access 'dir"': No such file or directory $ "$abc" bash: ls -l …
35 bash  shell  quoting  variable 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.