bash- все статьи тега ➜ страница 5
Сравнение чисел в Баш
Я начинаю узнавать о написании сценариев для терминала bash, но я не могу понять, как заставить сравнения работать правильно. Скрипт, который я использую: echo "enter two numbers"; read a b; echo "a=$a"; echo "b=$b"; if [ $a > $b ]; then echo "a is greater than b"; else echo "b is greater than a"; fi; проблема у меня в том, что он сравнивает число с первой цифры, т. е. 9 больше 10000, но 1 больше 09 Как я могу преобразовать числа в тип, чтобы сделать истинное сравнение? ...
Проверьте, содержит ли массив Bash значение
в Bash, каков самый простой способ проверить, содержит ли массив определенное значение? Edit: С помощью ответов и комментариев, после некоторого тестирования, я придумал это: function contains() { local n=$# local value=${!n} for ((i=1;i < $#;i++)) { if [ "${!i}" == "${value}" ]; then echo "y" return 0 fi } echo "n" return 1 } A=("one" "two" "three four") if [ $(contains "${A[@]}" "one") == "y" ]; then echo "contains ...
Bash игнорирует ошибку для конкретной команды
Я использую следующие варианты set -o pipefail set -e в скрипте bash, чтобы остановить выполнение при ошибке. У меня есть 100 выполнения скрипта, и я не хочу проверять код возврата скрипта. Но для конкретного скрипта я хочу игнорировать ошибку. Как я могу это сделать ? ...
использовать пробел в качестве разделителя с комманды
Я хочу использовать пробел в качестве разделителя с . какой синтаксис я могу использовать для этого? ...
Как urlencode данные для команды curl?
Я пытаюсь написать сценарий bash для тестирования, который принимает параметр и отправляет его через curl на веб-сайт. Мне нужно кодировать значение url, чтобы убедиться, что специальные символы обрабатываются правильно. Каков наилучший способ сделать это? вот мой основной скрипт до сих пор: #!/bin/bash host=${1:?'bad host'} value= shift shift curl -v -d "param=${value}" http://${host}/somepath $@ ...
Как получить основной IP-адрес локальной машины на Linux и OS X?
Я ищу решение командной строки, которое вернуло бы мне основной (первый) IP-адрес localhost, кроме 127.0.0.1 решение должно работать по крайней мере для Linux (Debian и RedHat) и OS X 10.7+ Я знаю, что ifconfig доступно на обоих, но его выход не очень согласуются между этими платформами. ...
Как проверить, существует ли строка в файле с Bash?
у меня есть файл, который содержит имена каталогов: my_list.txt: /tmp /var/tmp Я хотел бы проверить в Bash, прежде чем я добавлю имя каталога, если это имя уже существует в файле. ...
Извлечение имени файла без пути и расширения в bash [дубликат]
этот вопрос уже есть ответ здесь: Извлечь имя файла и расширение в Bash 35 ответов дали имена файлов, как это: /the/path/foo.txt bar.txt Я надеюсь получить: foo bar почему это не сработает? #!/bin/bash fullfile= fname=$(basename $fullfile) fbname=${fname%.*} echo $fbname Как правильно это сделать? ...
Как найти, является ли переменная пустой в Bash
Как я могу проверить, если переменная пуста в bash? ...
Как представить несколько условий в операторе if оболочки?
Я хочу представить несколько условий такой: if [ ( $g -eq 1 -a "$c" = "123" ) -o ( $g -eq 2 -a "$c" = "456" ) ] then echo abc; else echo efg; fi но когда я выполняю скрипт, он показывает syntax error at line 15: `[' unexpected, где строка 15 показывает, если .... что не так с этим условием? Я думаю, что-то не так с (). ...
Linux: копирование и создание целевого каталога, если он не существует
Мне нужна команда (или, возможно, опция для cp), которая создает каталог назначения, если он не существует. пример: cp -? file /path/to/copy/file/to/is/very/deep/there ...
Разница между двумя каталогами в Linux
Я пытаюсь найти файлы, существующие в одном каталоге, но не в другом, я попытался использовать эту команду: diff -q dir1 dir2 проблема с приведенной выше командой, что она находит оба файла в dir1 а не dir2 а также файлы dir2 а не dir1, Я пытаюсь найти файлы dir1 а не dir2 только. вот небольшой пример того, как выглядят мои данные dir1 dir2 dir3 1.txt 1.txt 1.txt 2.txt 3.txt 3.txt 5.txt 4.txt 5.txt 6.txt 7.txt 8.txt другой вопрос на мой взгляд, как я могу найти файл ...
Разница между ожиданием и сном
в чем разница между wait и sleep? ...
Как разделить строку в оболочке и получить последнее поле
Предположим у меня есть строка 1:2:3:4:5 и я хочу получить его последнее поле (5 в данном случае). Как мне это сделать с помощью Bash? Я пытался cut, но я не знаю, как указать последнее поле с -f. ...
Как проверить синтаксис скрипта Bash без его запуска?
можно ли проверить синтаксис скрипта bash без его выполнения? используя Perl, я могу запустить perl -c 'script name'. Есть ли эквивалентная команда для сценариев bash? ...
перенаправить копию вывода в лог-файл в bash-скрипт сам
Я знаю, как перенаправить stdout файл: exec > foo.log echo test это поставит "тест" в foo.журнал. Теперь я хочу перенаправить вывод в файл журнала и сохранить его на stdout т. е. это можно сделать тривиально из-за пределов скрипт: script | tee foo.log но я хочу сделать объявить его в самом скрипте пробовал exec | tee foo.log но это не сработало. ...
Как определить дату истечения срока действия сертификата SSL из сертификата с кодировкой PEM?
Если у меня есть фактический файл и оболочка Bash в Mac или Linux, как я могу запросить файл сертификата, когда он истечет? Не веб-сайт, а сам файл сертификата, предполагая, что у меня есть файлы csr, key, pem и chain. ...
Как создать всплеск процессора с помощью команды bash
Я хочу создать почти 100% нагрузку на машину Linux. Это четырехъядерная система, и я хочу, чтобы все ядра работали на полной скорости. В идеале загрузка ЦП будет длиться определенное количество времени, а затем остановится. Я надеюсь, что есть какой-то трюк в Баш. Я думаю о каком-то бесконечном цикле. ...
Как заменить пробелы в именах файлов с помощью скрипта bash
может ли кто-нибудь рекомендовать безопасное решение для рекурсивной замены пробелов подчеркиванием в именах файлов и каталогов, начиная с заданного корневого каталога? Например: $ tree . |-- a dir | `-- file with spaces.txt `-- b dir |-- another file with spaces.txt `-- yet another file with spaces.pdf будет: $ tree . |-- a_dir | `-- file_with_spaces.txt `-- b_dir |-- another_file_with_spaces.txt `-- yet_another_file_with_spaces.pdf ...
Получить имя пользователя текущих пользователей в bash?
Я пишу программу в bash, которая должна получить имя пользователя. Я слышал о том, что называется whoami но я понятия не имею, что это такое и как им пользоваться. какую команду я использую для получения текущего имени пользователя? ...