Puncte:0

Script Awk pentru a filtra textul pe o singură linie

drapel fr

Am un script care îmi oferă o ieșire ca aceasta:

ruby-devel este nevoie de software1
tcl este necesar de software-ul 2
python3 este necesar de software-ul 3
ocaml este necesar pentru software-ul 1

Sunt nou la awk, dar am încercat să-l scriu pentru a obține primul cuvânt și să-l pun într-o singură linie (pot folosi sed sau cel mai bun mod de a face acest lucru, nu am putut să o fac) pentru a putea construi o ieșire ca aceasta:

Trebuie să obțineți: ruby-devel tcl python3 ocaml
Rulați: yum install ruby-devel tcl python3 ocaml

Ai vreun ajutor cum să faci asta?

Puncte:1
drapel cn

Presupunând că folosești bash, ceva de genul acesta?

CUVINTE=$( your_script | awk '{printf("%s ",$1);}' )

printf „Trebuie să obțineți: %s\n” „${WORDS}”
printf „Run: yum install %s” „${WORDS}” 
Puncte:-1
drapel in

awk

awk '{if ($1~/ruby|tcl|python3|ocaml/) $1="ruby-devel tcl python3 ocaml" } END { print "Trebuie să obțineți:", $1, "\nRun: dnf install", $1 }' $fișier

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.