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

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

5
Як правильно вкладати зворотні Bash
Або я пропустив деякий люфт, або люфт, здається, не працює із занадто великою кількістю програмістів-цитат. $ echo "hello1-`echo hello2-\`echo hello3-\`echo hello4\`\``" hello1-hello2-hello3-echo hello4 Розшукується hello1-hello2-hello3-hello4-hello5-hello6-...
91 bash  shell  unix  quoting 

4
У bash, як я можу прив'язати функціональний ключ до команди?
Приклад: Я хочу прив'язати F12ключ до команди echo "foobar"таким чином, щоб кожного разу, коли я натискаю F12повідомлення "foobar" буде друкуватися на екрані. В ідеалі це може бути будь-яка довільна команда оболонки, а не тільки вбудовані. Як можна це робити?
91 bash  shell  binding 

6
Чому я не можу вказати змінну середовища та повторити її в тому ж командному рядку?
Розглянемо цей фрагмент: $ SOMEVAR=AAA $ echo zzz $SOMEVAR zzz zzz AAA zzz Тут я встановив $SOMEVARдля AAAпершого рядка - і коли я повторюю це для другого рядка, я отримую AAAвміст, як очікувалося. Але тоді, якщо я спробую вказати змінну в тому ж командному рядку, що і echo: $ SOMEVAR=BBB …

5
Як змусити читати sed з стандартного вводу? [дублікат]
Тут вже є відповіді на це питання : sed невідомий варіант `s 'у скрипті bash [дублікат] (4 відповіді) Закрито минулого місяця . я намагаюся grep searchterm myfile.csv | sed 's/replaceme/withthis/g' і отримання unknown option to `s' Що я роблю не так? Редагувати: Відповідно до коментарів код насправді правильний. Мій повний …
91 linux  bash  shell 

7
Bash: передає функцію як параметр
Мені потрібно передати функцію як параметр у Bash. Наприклад, такий код: function x() { echo "Hello world" } function around() { echo "before" eval $1 echo "after" } around x Повинно вивести: before Hello world after Я знаю, що evalце неправильно в цьому контексті, але це лише приклад :) Будь-яка …

5
Який інструмент використовувати для малювання діаграми дерева файлів [закрито]
Зачинено. Це питання не відповідає вимогам щодо переповнення стека . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно було актуальним для переповнення стека. Закрито 6 років тому . Удосконалюйте це питання Враховуючи дерево файлів - каталог із каталогами в ньому тощо, як би ви написали сценарій …

8
Використання кольорів із printf
Коли пишеться так, він виводить текст синім: printf "\e[1;34mThis is a blue text.\e[0m" Але я хочу, щоб формат був визначений у printf: printf '%-6s' "This is text" Зараз я спробував кілька варіантів, як додати колір, але безуспішно: printf '%-6s' "\e[1;34mThis is text\e[0m" Я навіть намагався додати код атрибута до форматування …
90 linux  bash  colors  printf 

16
tar: додайте всі файли та каталоги до поточного каталогу, Включаючи .svn тощо
Я намагаюся tar.gz каталог і використовувати tar -czf workspace.tar.gz * Отриманий tar включає .svnкаталоги в піддиректоріях, але НЕ в поточному каталозі (оскільки *розширюється лише до `` видимих ​​'' файлів, перш ніж він передається tar Я намагався tar -czf workspace.tar.gz .замість цього, але тоді я отримую повідомлення про помилку, оскільки "." …

3
Командний рядок Bash та ліміт введення
Чи існує якесь обмеження символів, встановлене в bash (або інших оболонках), як довго може бути введення? Якщо так, то який обмеження символів? Тобто чи можна написати команду в bash, яка занадто довга для виконання командного рядка? Якщо немає необхідного ліміту, чи є запропонований ліміт?

8
Видалення створених тимчасових файлів у несподіваному виході з bash
Я створюю тимчасові файли зі сценарію bash. Я видаляю їх наприкінці обробки, але оскільки сценарій працює досить довго, якщо я його вб'ю або просто CTRL-C під час запуску, тимчасові файли не видаляються. Чи можна зафіксувати ці події та очистити файли до закінчення виконання? Крім того, чи існує якась найкраща практика …

2
У чому різниця між використанням терміналу на mac та linux? [зачинено]
Зачинено. Це питання не в темі . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно було актуальним для переповнення стека. Закрито 8 років тому . Удосконалюйте це питання Я використовую Ubuntu останні чотири роки. Я маю базові знання команд оболонки, і я віддаю перевагу роботі в …
89 macos  bash  shell  ubuntu  terminal 

9
Як виконати вивід команди в поточній оболонці?
Я добре знаю програму source(вона ж .), яка бере вміст із файлу та виконує його в поточній оболонці. Тепер я перетворюю деякий текст у команди оболонки, а потім запускаю їх наступним чином: $ ls | sed ... | sh lsє лише випадковим прикладом, оригінальним текстом може бути що завгодно. sedтеж, …
89 bash  shell  unix  pipe 

7
Найпростіший спосіб перевірити наявність індексу чи ключа в масиві?
Використання: set -o nounset Наявність індексованого масиву, як: myArray=( "red" "black" "blue" ) Який найкоротший спосіб перевірити, чи встановлений елемент 1? Іноді я використовую наступне: test "${#myArray[@]}" -gt "1" && echo "1 exists" || echo "1 doesn't exist" Я хотів би знати, чи є один з них кращий. Як боротися …
89 arrays  bash  indexing  key 


2
Плутанина щодо $ {array [*]} проти $ {array [@]} в контексті завершення bash
Я вперше пильную при написанні завершення bash, і я трохи заплутаний щодо двох способів розмежування масивів bash ( ${array[@]}і ${array[*]}). Ось відповідний шматок коду (він, до речі, працює, але я хотів би його краще зрозуміти): _switch() { local cur perls local ROOT=${PERLBREW_ROOT:-$HOME/perl5/perlbrew} COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} perls=($ROOT/perls/perl-*) # remove all but the …

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