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

  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • REK Roth Productions

    REK Roth Pro

    8 Ocak 2011
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009