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

  • Brendan van Son

    Brendan van

    5 Aralık 2006
  • K-391

    K-391

    23 EKİM 2012
  • xiaoyu85

    xiaoyu85

    20 ŞUBAT 2010