Вопросы, характерные для Границы GNU Снова Оболочка, в противоположность другим оболочкам Границы/POSIX. Для вопросов об оболочках Unix в целом, используйте тег оболочки / вместо этого.

Bash (Граница GNU Снова Оболочка) является оболочкой Unix. Это было создано как свободная замена к Оболочке Bourne и включает много функций сценариев от других оболочек, таких как ksh и (t) csh. При вызове как sh, это предназначается для приспосабливания стандарту POSIX 1003.1. Функции Bash включают: редактирование командной строки с readline библиотекой, историей команд, управлением заданиями, функциями и псевдонимами, массивами, динамическими подсказками, целочисленной арифметикой, и командой и завершением имени файла. Bash является интерактивной оболочкой по умолчанию на большинстве дистрибутивов Linux и обычно доступен на других вариантах Unix. Некоторые системы GNU/Linux даже используют его в качестве оболочки по умолчанию /bin/sh.

Поскольку Bash является общей оболочкой, можно использовать его по умолчанию, поэтому остерегайтесь искушения выбрать этот тег по умолчанию! Используйте , только если Ваш вопрос об определенном для Bash синтаксисе или интерактивном использовании Bash. Используйте тега вместо этого, если Ваш вопрос о a sh (Граница или POSIX) сценарий. Используйте , если у Вас есть вопрос о взаимодействии оболочки с другими программами.

Прежде, чем обратиться за помощью о проблемах со сценариями Bash, рассмотрите отладку сценария сами сначала.

Связанные теги

  • Много агностических оболочкой вопросов представляет интерес для пользователей Bash.
  • Для вопросов об оболочке, пишущей сценарий в целом

Другие оболочки

  • - оболочка Korn
  • - оболочка C
  • - оболочка C TENEX
  • - оболочка Z
  • - оболочка Debian Almquist
  • - дружественная интерактивная оболочка

Функции связаны с Bash

  • (или globbing): соответствие файлам на основе их имени
  • история команд, по которым можно переместиться с Вверх и вниз по ключам, искала и т.д.; также механизм отзыва на основе расширения начала последовательностей !
  • завершение частично вводимых имен файлов, названий команды, опций и других аргументов
  • , показывающая подсказку перед каждой командой, которую многим пользователям нравится настраивать
  • библиотека GNU, реализовывая редактирование строки и обработку истории в Bash (и другие терминальные приложения как gdb и python)
  • для определения ярлыков для часто используемых команд
  • структуру данных для хранения объектов в индексируемой памяти

Ссылочный материал Bash

Выборка связанного с Bash Unix. Вопросы о SE:

Книги и другие ресурсы

---------121 сценарий--------186----, записанный в ударе, окружает язык. Большинство вопросов должно использовать теги / удар и/shell-script вместо этого.

Сценарии, записанные в ударе, окружают язык. Большинство вопросов должно использовать теги / удар и/shell-script вместо этого.

для оболочки . Используйте тегов и вместо этого.

9
ответов

Функция удара, которая берет аргумент как другие языки?

У меня есть функция удара для установки $PATH как это - присваивать-путь () {str= 1$ #, если $PATH пуст, присвойте его непосредственно. если [-z $PATH]; затем $str PATH=; #, если $PATH делает...
02.04.2014
9
ответов

Как обнаружить настольную среду в сценарии удара?

Я пишу сценарий удара, который должен знать, какая настольная среда (XFCE, Единица, KDE, LXDE, Помощник, Корица, GNOME2, GNOME3...) работает. Как я могу получить ту информацию?
23.02.2014
9
ответов

Сценарий Bash для получения значений ASCII для алфавита

Как я получаю значение ASCII алфавита? Например, 97 для a?
26.09.2013
7
ответов

Есть ли какая-либо известная и хорошо используемая оболочка, пишущая сценарий IDE для Un*x?

Там какие-либо IDE предназначены для сценариев оболочки, конкретно колотят и zsh сценарии? Это означает иметь подсветку синтаксиса для сценариев оболочки и что еще более важно сред отладки с функциями...
10.03.2014
6
ответов

перенаправление к/dev/null

Я читаю сценарий оболочки удара в качестве примера: #!/bin/bash # Этот сценарий делает резервное копирование моего корневого каталога. CD / размещает #, Это создает tar архива cf/var/tmp/home_franky.tar franky>/dev/null 2&...
14.03.2014
5
ответов

Замена обратных косых черт с запятыми в Bash

Я пытался писать сценарий, в котором я прочитываю файл линию за линией. Я, как предполагается, заменяю обратную косую черту (\) запятой (). Входной файл следующие: 1,2,3, WORKSTATION1\A, 5 1,2,3...
22.04.2014
5
ответов

Bash: Каково использование типа (Bash builtins)?

Я столкнулся с командой в сценарии Bash, в котором я нашел: найдите/var/log/abcd - тип f, вышеупомянутая команда была в контексте очистки файлов журнала. Я знаю то, что находит, делает. Видя - тип f, я...
19.11.2013
4
ответа

Как удалить какую-либо строку из файла с помощью сценариев оболочки?

Я пытаюсь удалить строку из .bash_profile. Строка добавляется когда мой выполненный сценарий оболочки: Моя строка в bash_profile следующим образом: # для Myapllication экспортируют MYAPP_HOME =/opt/myapp, я хочу удалить...
29.05.2013
4
ответа

сценарий удара, эхо производится в поле

Я создал эту Функцию, которые генерируют ниже вывода на терминале, но эта функция кажется сложной, Таким образом, я отправил здесь для любого улучшения или для того же альтернативного решения. #!/bin/bash функция...
30.03.2013
3
ответа

Надежно подавая программу с паролем

После понимания проблемы с использованием пароля в командной строке я должен найти способ подать программу с паролем без него являющийся проблемой (без зарегистрированного пароля...
13.04.2017
3
ответа

Измените текст на однострочном числе в нескольких текстовых файлах

Предположим, что у меня есть десять сценариев оболочки удара: script1.sh, script2.sh..., script10.sh. Первоначально, все десять файлов идентичны. Теперь, я хотел бы внести два изменения в каждом сценарии: В каждом файле, мне...
13.04.2017
3
ответа

Выполненный nvm (колотят функцию) через sudo

Я хочу записать init сценарий, который должен в основном работать, v0.11.12 && использования nvm навсегда запускаются,/srv/index.js как пользователь webconfig. nvm является функцией оболочки, которая объявляется в ~webconfig/.nvm/nvm....
21.04.2014
3
ответа

Переменная как команда; оценка по сравнению с ударом-c

Я читал сценарий удара, который кто-то сделал, и я заметил, что автор не использует оценку для оценки переменной как команды, автор использовал удар-c "1$" вместо оценки "1$", я принимаю оценку использования...
14.04.2014
3
ответа

Переименуйте последние 8 символов в имени файла

Я получаю видеофайлы с различными именами, но заключительные 8 символов всех являются числами (также отличающийся каждый раз). Это - шаблон имени файла: пользовательский текст 00030402.avi я имею к...
28.09.2013
3
ответа

Сценарий для предотвращения экранного очищения с помощью “перемещение мыши” не работает

Это - моя попытка сделать сценарий, который будет использовать "перемещение мыши" для предотвращения экранного очищения при просмотре видео. Я надеюсь использовать значение для самого высокого процесса % ЦП в вершине и если использование ЦП прев
19.09.2013
2
ответа

условие команды иногда целое число иногда представляет в виде строки

Я хочу выполнить это условие, в то время как [$ (кошка/path_of файл/)-eq 1] условие только корректно, если $ (кошка/path_of файл/) является целым числом и не строкой! Как я могу преодолеть это...
06.04.2014
2
ответа

Выключение видеовыхода по умолчанию с xrandr, когда внешний монитор подключен

Я являюсь новым для избиения сценариев, и я пытаюсь настроить свои видеовыходы так, чтобы мой дисплей портативного компьютера был выключен, когда я подключаю внешний монитор через VGA. Это - сценарий, который я придумал, симпатичный...
26.03.2014
2
ответа

Как записать, что псевдоним функционирует для создания выставочного индикатора выполнения dd?

В соответствии с этой статьей, путем замены: $ dd, если =/dev/sda =/dev/sdb [дополнительные опции] с: объем плазмы $-tpreb/dev/sda | dd =/dev/sdb [дополнительные опции] можно увеличить значение по умолчанию dd поведение...
12.03.2014
2
ответа

Как циклично выполниться, чтение функционируют в Сценарии Bash?

Я должен был удалить пробелы и прописные буквы к различным строкам текста как: "Меня зовут Mauro"-> "my_name_is_mauro", Таким образом, я создал этот удар script:lowercase_underscore.sh (называют его...
06.03.2014
2
ответа

Сценарий Bash для передачи сигналов об одновременно рабочем экземпляре (тот же сценарий) об условии и инкрементном счетчике

Фон Здесь - то, чего я хочу достигнуть. У меня есть (потенциально) продолжительный процесс. Теперь я имею в распоряжении блокировку очень хорошо, и все обычно в порядке. Однако, так как это - запланированное задание...
27.02.2014
2
ответа

OS X: как помешать компьютеру спать во время http соединения

Приложение я использую данные загрузок из определенного сервера, и мне нужны они для сна после того, как загрузка закончилась, и сокет закрывается. Однако загрузки происходят наугад дни, приложение это...
28.11.2013
2
ответа

Выполнение команд после основанных на событии выводов

существуют команды как iwevent, или tcpdump-n src размещают x.x.x.x, которые отправляют в stdout некоторые строки, когда что-то происходит. Есть ли любая форма выполнения некоторой команды inmmediatly после строки...
11.10.2013
2
ответа

Регулярное выражение в сценарии удара

Это - мой первый раз удар, пишущий сценарий, таким образом, я, вероятно, делаю легкую ошибку. В основном я пытаюсь записать сценарий, который получает группы пользователя, и если они будут в определенной группе, то это зарегистрируется...
03.10.2013
2
ответа

Почему это не работает, когда среднее число загрузки превышает 1?

Я тестировал этот сценарий, и его поведение было нечетно. Сценарий должен генерировать уведомления каждый раз, когда среднее число загрузки превышает указанный предел. Каждый раз, когда я передаю CPU_LOAD_LMT> =60, нет...
01.10.2013
2
ответа

Как я могу добавить массив аргументов в моем вызове rsync в сценарии?

Я хочу скопировать папку в другое местоположение, в то время как, исключая некоторые определенные файлы Вот мой текущий сценарий: #!/bin/bash, если [-n "2$"] затем source= $ (readlink-f 1$) destination= $ (readlink-...
10.09.2013
2
ответа

Запись начинающий с определенного номера строки в текстовом файле

В сценарии удара я хочу записать некоторые строки в текстовый файл, но этот файл уже использовался прежде и существуют тексты в нем. Таким образом, я хочу повторить некоторый дополнительный текст в нем, начинающий с определенного...
23.05.2013
1
ответ

Мультиплексное выполнение функции удара

Я создал функцию удара, чтобы "автоволшебно" соединить на наших переключателях и retrive их конфигурацию запуска с помощью ожидать команды. Я должен использовать, ожидают, потому что этот переключатель не принимает ssh user@...
09.04.2014
1
ответ

Как передать флаг от одного сценария до функции в другом сценарии

У меня есть сценарий, который устанавливает набор программ (домашнее пиво, мерзавец, и т.д.), и у меня есть оно журнал к stdout все вещи, что его выполнение по пути, но я хочу способность передать флаг, такой как - без журналов...
01.04.2014
1
ответ

для сценария удара - нужна дата, управляют переменной

Я пытаюсь создать сценарий, который проанализирует/var/log/secure файл для неудавшихся попыток входа в систему для сегодняшней даты только и перенаправит те попытки в отдельный файл, таким образом, я смогу просмотреть те попытки...
28.02.2014
1
ответ

Используя! n в сценарии или интерактивном режиме

Я добавляю к ~/.bashrc следующий код: test_exclamation () {printf %s "$READLINE_LINE" | xargs эхо} связывают-x '"\eX": test_exclamation' я пишу для избиения быстрого буферного $! 1700, Если я нажимаю Enter...
10.02.2014