Puncte:0

Cum să salvați rezultatul comenzii într-o anumită linie de fișier text

drapel dk

Aș dori să știu cum să salvez rezultatul comenzii într-o anumită linie a unui fișier text.

Am căutat pe internet aproximativ o oră despre această problemă, dar nu am găsit niciun răspuns adecvat.

De exemplu:

Vreau să salvez rezultatul unora ls comanda la a 7-a linie a exemplu.txt. (introduceți un rând nou)

Cum aș face-o?

Mulțumesc anticipat.

HuHa avatar
drapel es
Acesta ar putea fi ceea ce aveți nevoie: https://unix.stackexchange.com/questions/70878/replacing-string-based-on-line-number
drapel hr
Doriți să suprascrieți a șaptea linie existentă? sau introduceți noua linie înainte sau după ea?
カラス avatar
drapel dk
@steeldriver introduceți unul nou
Puncte:2
drapel hr

Ai putea folosi sedii r comandă pentru a citi și a introduce ieșirea comenzii după o anumită adresă.În special, GNU sed oferă numele de fișier special /dev/stdin pentru a citi date de la intrarea standard.

Deci, de exemplu, dat

$ exemplu de pisică.txt
Linia 1
Randul 2
Linia 3
Linia 4
Linia 5
Linia 6
Linia 7
Linia 8
Linia 9
Linia 10

atunci

$ ls -l exemplu.txt | sed -i '7r/dev/stdin' exemplu.txt

rezultă în

$ exemplu de pisică.txt
Linia 1
Randul 2
Linia 3
Linia 4
Linia 5
Linia 6
Linia 7
-rw-r--r-- 1 steeldriver steeldriver 71 28 iunie 15:52 example.txt
Linia 8
Linia 9
Linia 10

Dacă doriți să fie inserată ieșirea comenzii inainte de al 7-lea rând, apoi citiți și introduceți-l după al 6-lea.

カラス avatar
drapel dk
Funcționează! Mulțumesc mult.

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.