Puncte:-2

Căutați un cuvânt tip model din mai multe fișiere și concatenați linii întregi într-un fișier nou

drapel cn

Am mai multe fișiere de date. De exemplu

sales.txt (fișierul original are 13 coloane)

Data Unit $$ angajat# abc def jkl mno pqr
Dec1 10 500 2 1 2 3 4 5
Dec2 12 450 3 6 7 8 9 10
Dec3 13 550 3 11 12 13 14 15
Dec4 15 600 3 16 17 18 19 20
...
...

supply.txt (cel original are 3 coloane)

Data Cost unitar sursă1 sursă2
Dec1 10 300 5 5
Dec2 12 350 5 7
Dec3 13 350 7 6
Dec4 15 400 6 9
...
...

Și mai am 3 fișiere care au câte 2 coloane în fiecare. Ceea ce încerc să fac este să potrivesc data din toate aceste fișiere și să copiez liniile într-un singur fișier. Codul pe care îl folosesc pentru asta este:

# numără numărul de rânduri din fișier 
file="sales.txt"
N=$(awk -F, „{rows++} END{print rows}” $fișier)

pentru rând în $(eval echo {2..$N})
do 
 model=$(awk -v r=$rând 'FNR==r {printează $1}' $fişier);
 lipiți <(awk -v line=$row 'FNR==line{print $0}' $fișier) 
   <(awk -v line=$rând 'FNR==line{$1=""; printează $0}' supply.txt)
   <(awk -v line=$row 'FNR==line{print $2}' otherfile1.txt)
   <(awk -v line=$row 'FNR==line{print $2}' otherfile2.txt)
   <(awk -v line=$row 'FNR==line{print $2}' otherfile3.txt) >> account.txt
Terminat

Funcționează la copierea și găsirea liniilor, dar formatul din fișierul de ieșire este cam așa:

Dec1 10 500 2 1 2 3 4 5 10 300 5 5
1 # vine de la otherfile1
2 # vine de la otherfile2
3 # vine de la otherfile3
Dec2 12 450 3 6 7 8 9 10 12 350 5 7
4
5
6
...
...

Vreau să fie pe aceeași linie. Am încercat multe tehnici găsite pe acest forum, dar niciuna nu a funcționat pentru mine. Te rog ajuta-ma

djdomi avatar
drapel za
Vă rugăm să semnalați această întrebare pentru mutare pe stackoverflow.com, nu acceptăm programarea
drapel cn
Tocmai mi-am dat seama... Există vreo modalitate de a transporta la stackoverflow.com fără a retasta? Vă mulțumesc că ați subliniat
djdomi avatar
drapel za
semnalați-vă propria întrebare, din motive de comunitate și derulați puțin în jos aparține unui alt site, a spus în scurt timp da, este posibil

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.