順番に並べる必要がある

順番に並べる必要がある

注文を受け取るには、次の出力が必要です。

var="vas-1 vas-2 vas-3 .... vas-10 vas-11"
echo $var | egrep 'vas-[0-9]'

出力:

vas-1
vas-10
vas-11
vas-2
vas-3
..

期待される出力

vas-1
vas-2
vas-3
..
vas-10
vas-11

ベストアンサー1

Coreutilsはsortこれを行う必要があります。

$ var="vas-1 vas-2 vas-3 .... vas-10 vas-11"
$ echo "${var// /\\n}"
vas-1
vas-10
vas-11
vas-2
vas-3
..

# Sorted
$ echo "${var// /\\n}" | sort -n -t '-' -k 2
vas-1
vas-2
vas-3
..
vas-10
vas-11

これは具体的なもの${var// /\\n}です。bash空白を改行に置き換えるので、改行で区切られた出力を印刷します。

おすすめ記事