どのように延長しますか?大量に一つあるワイルドカード議論?たとえば、うまくいかないと宣言されていますが、有効なすべてのファイルを次のようにリストしたいと思いますa3
。a
("a1" "a2" "a3*")
("a1" "a2" a3*)
表現するそしてひも? )、しかし、より良い方法がありますか?
#/usr/bin/env bash
touch a1 a2 a31 a32
# list files starting with a3
a=("a1" "a2" "a3*") # fails
a=("a1" "a2" a3*) # works
ls "${a[@]}"
rm a1 a2 a31 a32
答え1
Bashでは、同じ「単語」内で異なる引用符を組み合わせることができるため、引用符なしの文字列も使用できますa=("a1" "a2" "a3"*)
。たとえば、a
にインポートすると、prefix=a
単にa=("${prefix}1" "${prefix}2" "${prefix}3"*)
。