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

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


14
Який лаконічний спосіб перевірити, чи змінні середовища встановлені в скрипті оболонки Unix?
У мене є кілька скриптів оболонки Unix, де мені потрібно перевірити, чи встановлені певні змінні середовища, перш ніж я починаю робити такі речі, тому я роблю такі речі: if [ -z "$STATE" ]; then echo "Need to set STATE" exit 1 fi if [ -z "$DEST" ]; then echo "Need …
500 bash  unix  shell 

23
ls команда: як я можу отримати рекурсивний список повного контуру, один рядок у файлі?
Як я можу змусити ls виплюнути плоский список рекурсивних контурів один на рядок? Наприклад, мені просто хочеться перерахувати файли з повним контуром: /home/dreftymac/. /home/dreftymac/foo.txt /home/dreftymac/bar.txt /home/dreftymac/stackoverflow /home/dreftymac/stackoverflow/alpha.txt /home/dreftymac/stackoverflow/bravo.txt /home/dreftymac/stackoverflow/charlie.txt ls -a1 майже робить те, що мені потрібно, але я не хочу фрагментів шляху, я хочу повноцінних шляхів.
493 bash  command-line  find  ls 

9
Чому потрібно ставити #! / Bin / bash на початку файлу сценарію?
Я раніше робив сценарії Баша, і всі вони чудово проходили без #!/bin/bashпочатку. Який сенс вводити його? Чи все було б інакше? Також, як ви вимовляєте #? Я знаю, що !вимовляється як "удар". Як #!вимовляється?
485 linux  bash  scripting  shebang 

9
Видаліть фіксований префікс / суфікс із рядка в Bash
У своєму bashскрипті у мене є рядок та його префікс / суфікс. Мені потрібно видалити префікс / суфікс із початкового рядка. Наприклад, скажімо, у мене є такі значення: string="hello-world" prefix="hell" suffix="ld" Як дійти до наступного результату? result="o-wor"
484 bash 




18
Як повернути значення рядка з функції Bash
Я хотів би повернути рядок з функції Bash. Я напишу приклад в java, щоб показати, що я хотів би зробити: public String getSomeString() { return "tadaa"; } String variable = getSomeString(); Наведений нижче приклад працює в bash, але чи є кращий спосіб зробити це? function getSomeString { echo "tadaa" } …

17
Як створити файл в Linux з вікна терміналу? [зачинено]
Закрито . Це питання потребує деталей або ясності . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Додайте деталі та уточніть проблему, відредагувавши цю публікацію . Закрито 4 місяці тому . Який найпростіший спосіб створити файл у терміналі Linux?

19
команда bash / fish для друку абсолютного шляху до файлу
Запитання: чи існує проста команда sh / bash / zsh / fish / ... для друку абсолютного шляху до того файлу, яким я його подаю? Випадок використання: Я перебуваю в директорії , /a/bі я хотів би, щоб надрукувати повний шлях до файлу cв командному рядку , так що я можу …
448 bash  shell  path 

12
Bash ігнорує помилку для певної команди
Я використовую наступні варіанти set -o pipefail set -e У скрипті bash для зупинки виконання помилки. У мене виконано ~ 100 рядків сценарію, і я не хочу перевіряти код повернення кожного рядка в сценарії. Але для однієї конкретної команди я хочу проігнорувати помилку. Як я можу це зробити?
444 linux  bash 

4
Обробити всі аргументи, крім першого (у баш-скрипті)
У мене є простий скрипт, де перший аргумент зарезервований для імені файлу, а всі інші необов'язкові аргументи повинні бути передані іншим частинам сценарію. За допомогою Google я знайшов цю вікі , але вона наводила буквальний приклад: echo "${@: -1}" Я нічого не можу змусити працювати, як-от: echo "${@:2}" або echo …
444 bash  shell 

30
Перевірте, чи містить масив Bash значення
У Bash, який найпростіший спосіб перевірити, чи містить масив певне значення? Редагувати : За допомогою відповідей та коментарів після деяких тестувань я придумав таке: function contains() { local n=$# local value=${!n} for ((i=1;i < $#;i++)) { if [ "${!i}" == "${value}" ]; then echo "y" return 0 fi } echo …
443 arrays  bash 


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