Вопросы с тегом «bash»

89
Самый простой способ проверить индекс или ключ в массиве?

С помощью: set -o nounset Имея индексированный массив, например: myArray=( "red" "black" "blue" ) Какой самый короткий способ проверить, установлен ли элемент 1? Иногда использую следующее: test "${#myArray[@]}" -gt "1" && echo "1 exists" || echo "1 doesn't exist" Я хотел бы знать, есть ли...

89
Как показать номер строки при выполнении сценария bash

У меня есть тестовый скрипт, который имеет множество команд и будет генерировать много вывода, я использую set -xили set -vи set -e, поэтому скрипт остановится при возникновении ошибки. Однако мне все еще довольно сложно определить, в какой строке остановилось выполнение, чтобы найти проблему....

88
В каком порядке я должен отправлять сигналы для корректного завершения процессов?

В комментарии к этому ответу на другой вопрос комментатор говорит: не используйте kill -9 без крайней необходимости! SIGKILL не может быть перехвачен, поэтому убитая программа не может запускать какие-либо процедуры завершения работы, например, для удаления временных файлов. Сначала попробуйте HUP...

88
Использование знака звездочки в grep

Я пытаюсь найти подстроку «abc» в конкретном файле в linux / bash Итак, я делаю: grep '*abc*' myFile Он ничего не возвращает. Но если я это сделаю: grep 'abc' myFile Он правильно возвращает совпадения. Теперь для меня это не проблема. Но что, если я хочу найти более сложную строку, например *abc *...

88
Как разграничить каталог только для файлов определенного типа?

У меня есть вопрос о команде diff, если мне нужен рекурсивный каталог diff, но только для определенного типа файла, как это сделать? Я пробовал использовать опцию exclude, но могу использовать только один шаблон: $ diff /destination/dir/1 /destination/dir/2 -r -x *.xml с помощью команды я могу...

88
Перебирать кортежи в bash?

Можно ли перебирать кортежи в bash? Например, было бы здорово, если бы работало следующее: for (i,j) in ((c,3), (e,5)); do echo "$i and $j"; done Есть ли обходной путь, который позволяет мне как-то перебирать кортежи?...

88
Как получить первую букву в переменной Bash?

У меня есть переменная Bash $word, которая иногда является словом или предложением, например: word="tiger" Или: word="This is a sentence." Как создать новую переменную Bash, равную только первой букве, найденной в переменной? Например, приведенное выше будет: echo $firstletter t Или: echo...

88
Принуждение bash к расширению переменных в строке, загруженной из файла

Я пытаюсь понять, как заставить bash (принудительно?) Расширять переменные в строке (которая была загружена из файла). У меня есть файл с названием something.txt с содержанием: hello $FOO world Я тогда бегу export FOO=42 echo $(cat something.txt) это возвращает: hello $FOO world Он не расширил $...

88
Остановить расширение подстановочных знаков оболочки?

Есть ли способ для скомпилированной программы командной строки сообщить bash или csh, что она не хочет, чтобы какие-либо подстановочные знаки в ее параметрах расширялись? Например, вам может понадобиться такая команда оболочки, как: foo * просто вернуть числовое значение ASCII этого символа....

88
Команда для очистки экрана Git Bash

Есть ли в Git команда для очистки экрана. например, в командной строке окна после выполнения большого количества кода, если вы наберете cls, тогда он очистит весь предыдущий код. поэтому мне нужна такая же функциональность в Git. так что кто-нибудь может сказать мне имя команды....

88
Запуск сценария внутри контейнера докеров с использованием сценария оболочки

Я пытаюсь создать сценарий оболочки для настройки контейнера докеров. Мой файл сценария выглядит так: #!bin/bash docker run -t -i -p 5902:5902 --name "mycontainer" --privileged myImage:new /bin/bash Запуск этого файла сценария запустит контейнер во вновь вызванном bash. Теперь мне нужно запустить...

87
Разделить вывод команды по столбцам с помощью Bash?

Я хочу сделать это: запустить команду захватить вывод выберите строку выберите столбец этой строки В качестве примера, допустим, я хочу получить имя команды из $PID(обратите внимание, что это всего лишь пример, я не предлагаю, чтобы это самый простой способ получить имя команды из идентификатора...

87
Использование sed для массового переименования файлов

Задача Измените эти имена файлов: F00001-0708-RG-биаслюйда F00001-0708-CS-akgdlaul F00001-0708-VF-hioulgigl к этим именам файлов: F0001-0708-RG-биаслюйда F0001-0708-CS-akgdlaul F0001-0708-VF-hioulgigl Код оболочки Тестировать: ls F00001-0708-*|sed 's/\(.\).\(.*\)/mv & \1\2/' Для выполнения: ls...

87
N-е слово в строковой переменной

В Bash я хочу, чтобы N-е слово строки удерживалось переменной. Например: STRING="one two three four" N=3 Результат: "three" Какая команда / сценарий Bash могла это сделать?

87
Можно ли использовать сценарий завершения табуляции Bash в zsh?

У меня есть сценарий завершения вкладки Bash для Apache Hadoop. Обычно я использую zsh как свою повседневную оболочку. Он имеет тенденцию быть довольно похожим на bash, когда мне это нужно, но похоже, что системы завершения табуляции радикально отличаются между ними. Есть ли простой способ...

87
bash - как передать результат команды which на cd

Как я могу передать результат whichкоманды cd? Вот что я пытаюсь сделать: which oracle | cd cd < which oracle Но ни один из них не работает. Есть ли способ добиться этого (вместо копирования / вставки, конечно)? Изменить: если подумать, эта команда завершится ошибкой, потому что целевой файл НЕ...

87
Рекурсивно переименовывать файлы с помощью find и sed

Я хочу просмотреть кучу каталогов и переименовать все файлы, которые заканчиваются на _test.rb, чтобы вместо этого заканчиваться на _spec.rb. Я так и не понял, что делать с bash, поэтому на этот раз подумал, что приложу некоторые усилия, чтобы добиться этого. Я пока что не понял, мои лучшие...