dizeleri-çoklu sütunlardan sonra değerleri ara


-2

Bu dosyaya sahibim (output.txt):

    name:some name^M
    ^M
    count:1^M
    ^M
    region:some_region
    name:some name^M
    ^M
    count:2^M
    ^M
    region:some_region^M
    ^M
    name:some name^M
    ^M
    count:1^M
    ^M
    region:some_region^M
    ^M
 
Testing Powershell scripts execustions from Rundeck server against Windows server

Sadece ad, sayı ve bölgeden sonra değerler nasıl alınır?

Istenilen çıktı:

some name 1 some region
some name 2 some region
some name 1 some region

ile grep -E 'name|count|region' output.txt | sed 's/^.*: //'

Bende var

some name
1
some_region
some name
2
some_region
some name
1
some_region

Birden fazla sütun nasıl oluşturulur?



Lütfen bağlantılı meta soru ^^^'yi okuyun ve buna göre hareket edin: iki çapraz site yinelemesinden birini silin.
Kamil Maciorowski

Yanıtlar:


0

Awk kullanarak olası bir cevap:

cat input | awk '/name: /{name=substr($0,7)} /count: /{cnt=substr($0,8)} /region:/{print name" "cnt" "substr($0,9)}' 

hayır, sadece bazı bölgelerde bölge gösterilmiştir
Milister

0
awk '/^(name|count|region):/{
         sep = (/^region/? ORS : OFS);
         gsub(/^[^:]+:[[:space:]]*|[[:space:]]*$/, "");
         printf "%s%s", $0, sep 
     }' file.txt

@RomanPerekhrest 'a teşekkürler

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.