Как добавить аргументы в скрипт

Как добавить аргументы в скрипт

Я хотел бы знать, как добавлять аргументы к командам.

Я бы хотел, чтобы это было примерно так:

$ arg --test

«arg» будет основной командой, а «--test» — аргументом.

решение1

Для пронумерованных аргументов между 0и , 9где x— конкретный пронумерованный аргумент, используйте следующую нотацию:

$x

Для пронумерованных аргументов выше, где x— конкретный пронумерованный аргумент, используйте следующую нотацию:

${x}

Для получения списка всех аргументов используйте это:

${@}

Или это:

${*}

Обратите внимание, что при заключении в двойные кавычки ${*}все аргументы, разделенные пробелом (обычно технически это первый символ переменной $IFS(внутренний разделитель полей)), разворачиваются в одну строку. ${@}При заключении в двойные кавычки разворачиваются в несколько строк.

${@}При использовании или скобки не нужны ${*}.

решение2

Это может быть дубликатом ответов на вопросы. Однако, пожалуйста, найдите возможное решение вашего запроса в виде очень простого скрипта оболочки ниже.

#!/bin/bash

for i in ${@} ; do
    case ${i} in
        --test)     echo "test option found"
                    ;;
        *)          echo "Usage: $0 [--test]"
                    exit 1
    esac
done
echo "$0 finished."

Вы можете узнать что-то большее, если поиграетесь с опциями этого скрипта оболочки в командной строке. Это может дополнить первый ответJL2210вполне уместно.

Примечание. Целью этой строки echo "Usage: $0 [--test]"является предоставление справочного сообщения, и в ней используется соглашение об указании необязательных аргументов в квадратных скобках.

Надеюсь это поможет.

Связанный контент