ブレース展開( ) からスペースを削除するために、パラメーター展開(検索と置換など)を適用したいと考えています。可能です?{a..z}
だから私は次の範囲を持っています:{a..z}
すべての文字で構成され、一度にスペースを削除したいと思います。
より長い例を次に示します。
$ echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
$ az=$(eval echo {a..z})
$ echo $az
a b c d e f g h i j k l m n o p q r s t u v w x y z
$ echo ${az// /}
abcdefghijklmnopqrstuvwxyz
パラメータ展開を範囲に直接適用することはできますか? または、特にこれを変数に割り当てずに、少なくとも1つの式で作成するには?
使用例の 1 つは、すべてのパラメータを動的に指定することgetopts
です。次に例を示します。
while getopts {a..z} arg; do
printf $arg
done
./az.sh -a -b -c
ただし、その範囲のスペースを最初に削除する必要があるため、これは機能しません (たとえば)。