Запитання з тегом «bash»

Для запитань щодо сценаріїв, написаних для командної оболонки Bash. Для скриптів оболонки з помилками / синтаксичними помилками, будь ласка, перевірте їх у програмі shellcheck (або на веб-сервері шелчек за адресою https://shellcheck.net) перед публікацією тут. Питання щодо інтерактивного використання Bash, швидше за все, будуть теми на Super User, ніж на переповнення стека.

22
Як уникнути одинарних лапок у межах одного цитованого рядка
Скажімо, у вас є Bash, aliasяк: alias rxvt='urxvt' що чудово працює. Однак: alias rxvt='urxvt -fg '#111111' -bg '#111111'' не буде працювати, і не буде: alias rxvt='urxvt -fg \'#111111\' -bg \'#111111\'' Тож як ви закінчуєте відповідність відкриття та закриття цитат всередині рядка, як тільки ви уникнули цитат? alias rxvt='urxvt -fg'\''#111111'\'' -bg …
1016 bash  syntax  quoting 


10
Як перенаправити вихід у файл та stdout
На цей питання є відповіді на стек-переповнення на російському : Як сохранити вивід будь-якої команди у файл і чітко ви побачите його в терміналі? У bash, виклик fooбуде відображати будь-який вихід з цієї команди на stdout. Виклик foo > outputбуде перенаправляти будь-який вихід з цієї команди на вказаний файл (у …
988 linux  bash  file-io  io  stdout 

11
Як я можу прокласти трубу більш жорстко, а не прокладати?
У мене є програма, яка записує інформацію в stdoutі stderr, і мені потрібно grepпроаналізувати те, що стає більш складним , ігноруючи stdout . Я, звичайно, можу це зробити в 2 етапи: command > /dev/null 2> temp.file grep 'something' temp.file але я вважаю за краще мати можливість це робити без тимчасових …
981 bash  grep  stdout  pipe  stderr 

7
Передача параметрів функції Bash
Я намагаюся шукати, як передавати параметри у функції Bash, але все, що виходить - це завжди, як передавати параметр з командного рядка. Я хотів би передати параметри всередині свого сценарію. Я намагався: myBackupFunction("..", "...", "xx") function myBackupFunction($directory, $options, $rootPassword) { ... } Але синтаксис невірний, як передати параметр моїй функції?

21
Як я можу оголосити і використовувати булеві змінні в сценарії оболонки?
Я спробував оголосити булеву змінну в сценарії оболонки, використовуючи наступний синтаксис: variable=$false variable=$true Це правильно? Крім того, якщо я хотів би оновити цю змінну, я використовував би той самий синтаксис? Нарешті, чи правильний наступний синтаксис використання булевих змінних як виразів? if [ $variable ] if [ !$variable ]
977 bash  shell  scripting  boolean  sh 



27
Перелік лише каталогів, що використовують ls у Bash?
Ця команда перераховує каталоги в поточному шляху: ls -d */ Що саме робить візерунок */? І як ми можемо дати абсолютний шлях у наведеній вище команді (наприклад ls -d /home/alice/Documents) для переліку лише каталогів на цьому шляху?
954 bash  directory  ls 

28
Труба в / з буфера обміну в сценарії Bash
Чи можливо трубу в / з буфера обміну в Bash? Незалежно від того, чи це трубопровід до / з ручки пристрою або за допомогою допоміжного додатку, я нічого не можу знайти. Наприклад, якби /dev/clipпристрій, що посилався на буфер обміну, ми могли б зробити: cat /dev/clip # Dump the contents of …
945 linux  bash  macos  clipboard 

30
Як обрізати пробіл із змінної Bash?
У мене є сценарій оболонки з цим кодом: var=`hg st -R "$path"` if [ -n "$var" ]; then echo $var fi Але умовний код завжди виконується, тому що hg stзавжди друкується принаймні один символ нового рядка. Чи є простий спосіб позбавити пробіл $var(наприклад, trim()у PHP )? або Чи існує стандартний …
920 string  bash  variables  trim 

13
Як повторювати команди оболонки під час їх виконання
Як у скрипті оболонки я можу повторювати всі викликані команди оболонки та розширювати будь-які назви змінних? Наприклад, подано наступний рядок: ls $DIRNAME Я хотів би, щоб сценарій запускав команду і відображав наступне ls /full/path/to/some/dir Мета - збереження журналу всіх викликаних команд оболонок та їх аргументів. Чи може бути кращий спосіб …
910 bash  shell  sh  posix  trace 

8
Як перебрати аргументи в сценарії Bash
У мене є складна команда, про яку я хотів би зробити сценарій shell / bash. Я можу це $1легко написати : foo $1 args -o $1.ext Я хочу мати можливість передавати кілька імен вводу в сценарій. Який правильний спосіб це зробити? І, звичайно, я хочу обробляти імена файлів з пробілами …
899 bash  command-line 

24
Як назавжди встановити $ PATH на Linux / Unix?
Я намагаюся додати каталог до мого шляху, щоб він завжди був у моєму шляху Linux. Я спробував: export PATH=$PATH:/path/to/dir Це працює, проте щоразу, коли я виходжу з терміналу і запускаю новий екземпляр терміналу, цей шлях втрачається, і мені потрібно запустити команду експорту знову. Як я можу це зробити, щоб це …
879 linux  bash  unix  path  zsh 

30
Розбір JSON за допомогою інструментів Unix
На цей питання є відповіді на Stack Overflow на російському : Парсинг JSON в оболонці Я намагаюся розібрати JSON, який повернувся із запиту на завиток, як-от так: curl 'http://twitter.com/users/username.json' | sed -e 's/[{}]/''/g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' Наведене вище розбиває JSON на поля, …
879 json  bash  parsing 

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