параметры сценария удара [дубликат]

(я совершенно не правильно понял вопрос).

Итак, да - используйте «% @» для типов объектов. Передайте * myString в NSLog (), чтобы преобразовать NSString ** в NSString *.

Обратите внимание, что вам, вероятно, следует использовать NSError для инкапсуляции ошибок, и вам следует проверить, равен ли ваш параметр передачи по ссылке NULL, прежде чем присваивать ему значение.

См .:

https://nshipster.com/nserror/

11
задан Brent 6 May 2009 в 02:52
поделиться

4 ответа

You want getopts.

10
ответ дан 3 December 2019 в 05:59
поделиться
while [[ $1 = -* ]]; do
    arg=$1; shift           # shift the found arg away.

    case $arg in
        --foo)
            do_foo "$1"
            shift           # foo takes an arg, needs an extra shift
            ;;
        --bar)
            do_bar          # bar takes no arg, doesn't need an extra shift
            ;;
    esac
done
8
ответ дан 3 December 2019 в 05:59
поделиться

Хороший пример того, как реализовать короткие и длинные переключатели рядом сторона mcurl:

http://www.goforlinux.de/scripts/mcurl/

2
ответ дан 3 December 2019 в 05:59
поделиться

В Bash есть функция getops, как упоминалось здесь ранее, которая может решить ваши проблемы.

Если вам нужно что-то более сложное, bash также поддерживает позиционные параметры (упорядоченные $ 1 ... $ 9, а затем $ {10} .... $ {n}), вам придется придумать свою собственную логику. для обработки этого ввода. Один из простых способов - поместить переключатель / регистр внутри цикла for, перебирая параметры. Вы можете использовать одну из двух специальных переменных bash, обрабатывающих ввод: $ * или $ @ .

1
ответ дан 3 December 2019 в 05:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: