Запитання з тегом «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, але мене цікавлять і інші поширені оболонки. Якщо ви знаєте якісь особливості …
72 shell  quoting  ksh  arguments 


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


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


5
Передайте змінну оболонки як / pattern / to 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 > byteFileForNow …

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

7
Що хорошого мнемоніка для подвійних оболонок проти одиничних лапок?
Я не роблю достатньо сценаріїв, щоб пам'ятати, не дивлячись на те, чи подвійні чи одиничні лапки призводять до заміни змінної Unix. Я точно розумію, що відбувається. Моє запитання: чи є у когось пам'ять про хитрість пам’яті, щоб зробити правильне правило цитування в голові?

4
Як надрукувати "$" у цьому документі
Як я можу відлунювати "$" у here-doc в 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 …
35 bash  shell  quoting  variable 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.