SORU
16 EYLÜL 2011, Cuma


Nasıl BASH bir dizi sıralamak için

Bash bir dizi, örneğin var

array=(a c b f 3 5)

Diziyi sıralamak istiyorum. Sadece sıralı bir şekilde içerik görüntülemek, ama sıralanan öğeleri içeren yeni bir dizi almak için. Yeni bir sıralı dizi tamamen yeni bir ya da eski olabilir.

CEVAP
3 AĞUSTOS 2012, Cuma


Gerçekten çok fazla kod da gerek kalmıyor

IFS=$'\n' sorted=($(sort <<<"${array[*]}"))

Destekler elemanları (bir yeni satır değil sürece), boşluklarveBash 3 çalışır.x.

örneğin:

$ array=("a c" b f "3 5")
$ IFS=$'\n' sorted=($(sort <<<"${array[*]}"))
$ printf "[%s]\n" "${sorted[@]}"
[3 5]
[a c]
[b]
[f]

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bobinire

    bobinire

    24 EYLÜL 2006
  • Rockstar Games

    Rockstar Gam

    17 ŞUBAT 2006
  • The Warp Zone

    The Warp Zon

    24 AĞUSTOS 2007