Вопросы по теме 'getopts'
Использование getopts для обработки длинных и коротких параметров командной строки
Я хочу, чтобы с помощью моего сценария оболочки вызывались длинные и короткие формы параметров командной строки.
Я знаю, что getopts можно использовать, но, как и в Perl, я не смог сделать то же самое с оболочкой.
Любые идеи о том, как это...
454246 просмотров
schedule
26.12.2023
Есть ли способ использовать строку в качестве переключателя с помощью 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 просмотров
schedule
11.02.2023
Порядок 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