Как одновременно поддерживать короткие и длинные параметры в bash? [дубликат]

Альтернативный метод:

Преобразовывают формат столбца, который Вы хотите изменить на 'текст'. Выберите все ячейки, которые Вы хотите сохранить, скопировать. Не отменяя выбор тех столбцов, нажмите "Edit> Paste Special> As values"

, Сохраняют как CSV. Обратите внимание, что это должно быть последней вещью, которую Вы делаете в файл, потому что при повторном открытии его это отформатирует себя как даты, так как форматы ячеек не могут быть сохранены в файлах CSV.

29
задан Xiè Jìléi 15 November 2010 в 02:02
поделиться

1 ответ

getopt поддерживает длинные опции.

http://man7.org/linux/man-pages/man1/getopt.1.html

Вот пример использования ваших аргументов:

#!/bin/bash

OPTS=`getopt -o axby -l long-key: -- "$@"`
if [ $? != 0 ]
then
    exit 1
fi

eval set -- "$OPTS"

while true ; do
    case "$1" in
        -a) echo "Got a"; shift;;
        -b) echo "Got b"; shift;;
        -x) echo "Got x"; shift;;
        -y) echo "Got y"; shift;;
        --long-key) echo "Got long-key, arg: $2"; shift 2;;
        --) shift; break;;
    esac
done
echo "Args:"
for arg
do
    echo $arg
done

Вывод $ foo -ax --long-key val -b -y SOME FILE NAMES:

Got a
Got x
Got long-key, arg: val
Got b
Got y
Args:
SOME
FILE
NAMES
38
ответ дан 28 November 2019 в 01:53
поделиться
Другие вопросы по тегам:

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