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

Оболонка - це інтерфейс командного рядка Unix. Ви можете вводити команди в оболонці інтерактивно або писати сценарії для автоматизації завдань. Використовуйте цей тег для питань, що стосуються / bin / sh та найбільш сумісних оболонок (ash, bash, ksh, zsh,…). Для скриптів оболонок з помилками перевірте їх на http://shellcheck.net перед публікацією тут.


21
Розфарбування середовища вашого терміналу та оболонки?
Більшу частину часу я провожу, працюючи в середовищі Unix та використовуючи емулятори терміналів. Я намагаюся використовувати колір у командному рядку, оскільки колір робить вихід більш корисним та інтуїтивним. Які існують варіанти, щоб додати колір до мого термінального середовища? Які трюки ви використовуєте? З якими підводними каменями ви стикалися? На жаль, …
262 shell  bash  colors  prompt 

4
Як отримати під останньої виконаної команди в скрипті оболонки?
Я хочу мати такий сценарій оболонки: my-app & echo $my-app-pid Але я не знаю, як отримати під щойно виконаної команди. Я знаю, що можу просто скористатися jobs -p my-appкомандою, щоб зібрати під. Але якщо я хочу виконати оболонку кілька разів, цей спосіб не буде працювати. Тому що у робочих місць …


3
Які оператори контролю та перенаправлення оболонки?
Я часто бачу підручники в Інтернеті, які з'єднують різні команди з різними символами. Наприклад: command1 | command2 command1 & command2 command1 || command2 command1 && command2 Інші, здається, з'єднують команди з файлами: command1 > file1 command1 >> file1 Що це за речі? Як вони називаються? Що вони роблять? Чи є …

6
Яка різниця між операторами Bash [[vs [vs (((?
Я трохи заплутаний у тому, що роблять ці оператори по-різному, коли вони використовуються в bash (дужки, подвійні дужки, дужки та подвійні дужки). [[ , [ , ( , (( Я бачив, як люди використовують їх, якщо такі заяви: if [[condition]] if [condition] if ((condition)) if (condition)
245 bash  shell  test 

8
Як я можу перевірити, чи змінна порожня або містить лише пробіли?
Наступний синтаксис bash перевіряє, чи paramвін не порожній: [[ ! -z $param ]] Наприклад: param="" [[ ! -z $param ]] && echo "I am not zero" Немає результату та його штрафу. Але коли paramпорожньо, окрім одного (або більше) символів пробілу, справа в іншому: param=" " # one space [[ ! …

6
Як перейти до попереднього робочого каталогу в терміналі?
Як в терміналі я можу визначити ключ для переходу до попереднього каталогу, в якому я був, коли міняв каталог за допомогою cdкоманди? Наприклад, я вхожу, /opt/soft/binя cdвхожу /etc/squid3і хочу повернутися до першого каталогу.
213 shell  cd-command 

3
Вплив на безпеку забуття процитувати змінну в оболонках bash / POSIX
Якщо ви деякий час стежите за unix.stackexchange.com, ви, мабуть, сподіваєтесь, що до цього часу знаєте, що залишення змінної без котирування у контексті списку (як у echo $var) в оболонках Bourne / POSIX (zsh є винятком) має дуже особливе значення і не слід робити, якщо у вас є дуже вагомі причини. …

8
Чому * not * розбір `ls` (і що робити замість цього)?
Я послідовно бачу відповіді, цитуючи це посилання, вказуючи остаточно: "Не розбирайте ls!" Це мене турбує з кількох причин: Здається, інформація в цьому посиланні була прийнята оптом з невеликим питанням, хоча я можу виділити принаймні кілька помилок у випадковому читанні. Також здається, що проблеми, зазначені в цьому посиланні, не викликали бажання …
204 shell  ls 


4
Чому використання циклу оболонки для обробки тексту вважається поганою практикою?
Чи використовується цикл час для обробки тексту, як правило, поганою практикою в оболонках POSIX? Як вказував Стефан Шазелас , одні з причин невикористання шлейфу оболонки - концептуальність , надійність , розбірливість , ефективність та безпека . Ця відповідь пояснює аспекти надійності та розбірливості : while IFS= read -r line <&3; …


20
Як я можу отримати ім'я розповсюдження та номер версії у простому скрипті оболонки?
Я працюю над простим сценарієм bash, який повинен мати можливість працювати на дистрибутивах Ubuntu та CentOS (підтримка Debian і Fedora / RHEL була б плюсом), і мені потрібно знати ім'я та версію дистрибутива, за допомогою якого працює сценарій ( щоб викликати конкретні дії, наприклад, створення сховищ). Поки що у мене …
191 shell 


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