3

ファイルを圧縮するスクリプトに取り組んでいます。変数の内容がパターンに一致するまで「ループまで」を実行したいと思います。スクリプトは zenity を使用しています。これは主要な部分です:

part="0"
pattern="^([0-9]{1}[0-9]*([km])$"
until `grep -E "$pattern" "$part"` ; do
    part=$(zenity --entry \
    --title="Zip the file" \
    --text "Choose the size of divided parts:
(0 = no division, *m = *mb, *k = *kb)" \
    --entry-text "0");

    if grep -E "$pattern" "$part" ; then
        zenity --warning --text "Wrong text entry, try again." --no-cancel;
    fi
done

「k」または「m」で終わる数字を含む文字列を受け入れ、「0」で始まる文字列を受け入れないようにしたい。

模様は大丈夫?

4

2 に答える 2