Вопросы по теме 'getopts'

Использование getopts для обработки длинных и коротких параметров командной строки
Я хочу, чтобы с помощью моего сценария оболочки вызывались длинные и короткие формы параметров командной строки. Я знаю, что getopts можно использовать, но, как и в Perl, я не смог сделать то же самое с оболочкой. Любые идеи о том, как это...
454246 просмотров

Есть ли способ использовать строку в качестве переключателя с помощью getopts?
Я вижу, есть ли способ для getopts обрабатывать переключатели со строками вместо символов. Например, я хотел бы предоставить что-то вроде этого: script.ksh -file1 file1.txt -file2.txt Вместо: script.ksh -f file1.txt -g file2.txt...
266 просмотров
schedule 04.03.2023

Как иметь позиционный аргумент перед параметрами в сценарии оболочки?
Я хочу иметь сценарий оболочки, который принимает имя файла в качестве первого позиционного аргумента, за которым следуют параметры ( ./test.sh <file> [options] ). Однако getopts не работает, когда я указываю позиционный аргумент перед...
738 просмотров
schedule 29.06.2022

Добавить содержимое использования в сценарий оболочки без getopts
У меня есть скрипт, в котором мне нужно отобразить команду использования, если пользователь пропустит какую-либо обязательную информацию при выполнении скрипта. Usage : Script -s <server> -i <instance> -u <user> -p...
30775 просмотров
schedule 07.06.2023

Пример использования getopts в bash
Я хочу вызвать файл myscript таким образом: $ ./myscript -s 45 -p any_string or $ ./myscript -h #should display help $ ./myscript #should display help Мои требования: getopt здесь, чтобы получить входные аргументы...
586056 просмотров
schedule 22.06.2022

Как я могу создать список аргументов, неприемлемых для getopts в Bash?
Допустим, я запускаю getopts в сценарии Bash со строкой параметров ":a:b" и предоставляю следующие параметры командной строки: ./script.sh -a foo bar -b bar zappo Экземпляр «foo» является ожидаемым аргументом для опции a , а опция b не...
231 просмотров
schedule 10.10.2022

Как разрешить необязательные аргументы быть перед необязательными аргументами с помощью getopts в Bash?
Я знаю, как обрабатывать необязательные аргументы с помощью getopts в Bash. #!/bin/bash while getopts ":a:p:drh" opt; do case "$opt" in a) echo $OPTARG;; esac done Но если мой скрипт ожидает ./script.sh arg1 [options] , как мне...
980 просмотров
schedule 01.12.2023

getopts проверяет взаимоисключающие аргументы
У меня есть простой скрипт (ниже), который имеет взаимоисключающие аргументы. Аргументы скрипта должны быть ./scriptname.sh -m|-d [-n] , однако пользователь может запустить скрипт с ./scriptname.sh -m -d , что неверно. Вопрос : как я могу...
8941 просмотров
schedule 01.04.2023

Доступ ко второму аргументу в опции getopts с помощью bash
Уже заданный вопрос, связанный с этим несколько дней назад здесь Но на этот раз условия разные. Имея следующий скрипт bash с использованием getopts #!/bin/bash ipaddr="" sysip="" msgType="" sshTimeout="" bulbIndex="" bulbstate="" while...
605 просмотров
schedule 03.08.2023

Как обрабатывать несколько аргументов входного файла с помощью getopts
Я пытаюсь создать скрипт для нескольких файлов входных данных. Каков наилучший способ, как справиться с этими аргументами? Использование скрипта должно быть: ./script.sh -a sth -b sth - c sth -d sth input1 input2 input3 Я могу...
2237 просмотров
schedule 31.05.2023

getopts в bash, скрипт работал раньше, а теперь я сбит с толку
Итак, у меня есть пара getopts в моем сценарии bash. Вот пример работающего. FOUND= SEARCH= COUNT=0 while getopts "ips:flenkc" OPTION do case $OPTION in i) FOUND=1 let "COUNT++" ;;...
56 просмотров
schedule 13.04.2023

Проверка существования аргумента командной строки
Я создал сценарий оболочки с 1 обязательным аргументом. Я хочу, чтобы скрипт запускался только в том случае, если присутствует этот 1 аргумент, иначе он завершится. Вот мой код: #!/bin/bash branch=stable # Custom options/arguments usage() {...
693 просмотров
schedule 26.04.2023

Использование плавающих точек в сценарии Bash
У меня есть этот сценарий Bash, в котором есть базовый оператор if...else , но сценарий, похоже, не распознает значения правильно и просто продолжает сценарий, когда он должен остановиться и показать ошибку. Я считаю, что это потому, что я...
68 просмотров
schedule 01.05.2022

Ошибка: не найден файл с именем: -a при использовании getopts
У меня возникли проблемы с использованием getopts, когда я пытаюсь разобрать параметры, но получаю ошибку: Ошибка: не найден файл с именем: -a Код: while getopts ":a :b :c :d :e :f :g" opt; do case $opt in a) FILETOPARSE=$OPTARG...
41 просмотров
schedule 25.06.2022

getopts со всеми необязательными аргументами
Чтобы запустить сценарий bash, мне нужны некоторые аргументы и флаги, поскольку требования довольно сложны, я решил использовать функцию getopt, подобную этой. while getopts ":s:g:r" o; do case "${o}" in s) # Variables that...
1642 просмотров
schedule 25.12.2022

Как совместить параметры getopts и position в bash?
Я хочу использовать как getopts , так и позиционные параметры, но если я передам позиционный параметр программе, getopts потеряется. directory=$1 while getopts l: flag; do case "$flag" in l) level=$OPTARG;; esac done if [ -n "$level"...
2216 просмотров
schedule 15.01.2023

Обработка неиспользуемого аргумента getopts
У меня есть скрипт, который начинается с getopts и выглядит следующим образом: USAGE() { echo -e "Usage: bash $0 [-w <in-dir>] [-o <out-dir>] [-c <template1>] [-t <template2>] \n" 1>&2; exit 1; } if (($# == 0))...
667 просмотров

Порядок getopts, когда параметру не передается аргумент
Моя проблема в том, что, когда я использую фрагменты ниже, сценарий забивает порядок, когда я не даю аргумент для опции. Если я включаю аргументы, все хорошо, и я могу вводить параметры в любом порядке. Как я могу убедиться, что различные...
75 просмотров
schedule 20.03.2024

Как отправить вывод ветки, если в трубу
имея этот скрипт: if getopts "i" i; then grep -i | a lot of commands else grep | a lot of commands fi Вопрос в том, что я не хочу дублировать a lot of commands после первой записи в канал, но запись происходит из ветки (будь то getopts...
34 просмотров
schedule 22.08.2022

Bash 4.2.46 getopts объединяет короткие опции, и сброс OPTIND во время обработки приводит к бесконечному циклу: как это можно исправить в Bash?
Я использую следующую версию Bash в современной виртуальной машине CentOS 7: GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu) Следующий код работает так, как ожидалось (обратите внимание на -x -y ): set -- -x -y; OPTIND=1; while...
41 просмотров
schedule 09.11.2022