unix

2016-03-20 23 views
0
üzerinde bash komut dosyasını kullanarak bir dizede 4 sayı dizisi yeniden düzenlemek için nasıl

Aşağıdaki senaryosu var:unix

12.834778, 52.014472, 13.610687, 52.399905 
13.610687 52.014472 
:
#!/bin/bash 
EXTENT=`ogrinfo -so area.geojson ogrgeojson | grep Extent | sed 's/Extent: //g' | sed 's/(//g' | sed 's/)//g' | sed 's/ - /, /g'` 
echo $EXTENT 
EXTENT=`echo $EXTENT | awk -F ',' '{print $1 " " $4 " " $3 " " $2}'` 
echo $EXTENT 

ve nedense numaraları ve çıkış bazı yiyor

, ikinci satırda beklenen 4 sayıdır.

Anlamadığım şey, eğer 4 komutu kendim kopyala yapıştırırsam, terminalin herşeyin beklendiği gibi çalıştığıdır. Bir bash betiğinde çalışmasını sağlamak için ne yapmam gerekiyor?

cevap

0

Ben senin sorunu yeniden tespit tek yolu bu idi:

$ echo $'12.834778\r, 52.014472\r, 13.610687\r, 52.399905' | 
    awk -F ',' '{print $1 " " $4 " " $3 " " $2}' 
52.014472 13.610687 

Dosyanda "satır başlarını" kaldırın ve ince olmalıdır.