Вопросы с тегом «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 to …
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 в начале файла скрипта?
Я делал скрипты на Bash раньше, и все они работали нормально #!/bin/bashв начале. Какой смысл вкладывать это в? Будет ли что-то другое? Кроме того, как вы произносите #? Я знаю, что !произносится как «взрыв». Как #!произносится?
487 linux  bash  scripting  shebang 

9
Удалить фиксированный префикс / суффикс из строки в Bash
В моем bashсценарии у меня есть строка и ее префикс / суффикс. Мне нужно удалить префикс / суффикс из исходной строки. Например, допустим, у меня есть следующие значения: string="hello-world" prefix="hell" suffix="ld" Как мне получить следующий результат? result="o-wor"
485 bash 




18
Как вернуть строковое значение из функции Bash
Я хотел бы вернуть строку из функции Bash. Я напишу пример в Java, чтобы показать, что я хотел бы сделать: public String getSomeString() { return "tadaa"; } String variable = getSomeString(); Пример ниже работает в bash, но есть ли лучший способ сделать это? function getSomeString { echo "tadaa" } VARIABLE=$(getSomeString)

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 строк выполнения скрипта, и я не хочу проверять код возврата каждой строки в скрипте. Но для одной конкретной команды я хочу игнорировать ошибку. Как я могу это сделать?
446 linux  bash 


4
Обработка всех аргументов, кроме первого (в скрипте bash)
У меня есть простой скрипт, где первый аргумент зарезервирован для имени файла, а все остальные необязательные аргументы должны быть переданы в другие части скрипта. С помощью Google я нашел эту вики , но она предоставила буквальный пример: echo "${@: -1}" Я не могу заставить что-нибудь еще работать, например: echo "${@:2}" …
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 } …
443 arrays  bash 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.