Šie 10 Sed piemēri padarīs jūs par Linux enerģijas lietotāju

Šie 10 Sed piemēri padarīs jūs par Linux enerģijas lietotāju

Teksta failu un termināla izvades rediģēšana ir ikdienas darbs tiem, kas administrē Linux mašīnas. Komandrindas utilītas, piemēram, sed, ļauj lietotājam mainīt un mainīt teksta faila saturu tieši no termināļa loga.





Šajā rakstā mēs detalizēti apspriedīsim komandu sed, kā arī dažus būtiskus piemērus, kas parāda sed utilītas spēku Linux.





Kas ir sed komanda?

Komanda sed, kas ir akronīms Straumes redaktors , ir komandrindas rīks, kas ļauj Linux lietotājiem veikt teksta darbības failos un termināla izvados. Izmantojot sed, lietotāji var atrast un aizstāt konkrētus vārdus tekstā, parādīt noteiktu izvades sadaļu un rediģēt teksta failus, tos neatverot.





Trīs pamata darbības, ko atbalsta komanda sed, ir šādas:

  1. Ievietošana
  2. Dzēšana
  3. Aizvietošana (atrast un aizstāt)

Pieredzējuši lietotāji var arī ieviest regulārās izteiksmes ar komandu sed, lai efektīvāk rediģētu teksta straumes.



Komandas pamata sintakse ir šāda:

sed [options] [pattern] [filepath]

... kur iespējas ir dažādas komandas funkcijas, modelis ir regulārā izteiksme vai skripts, kuru vēlaties saskaņot, un failu ceļš ir ceļš uz teksta failu, kurā ir teksts.





straumējiet video no tālruņa uz xbox one

10 Linux sed komandas piemēri

Ja plānojat kļūt par parastu Linux lietotāju, jums varētu būt noderīgi zināt, kā rediģēt failus, meklēt un aizstāt konkrētus vārdus un filtrēt termināla izvadi. Šajā sadaļā apskatīti daži komandas sed piemēri, kas noteikti pārvērtīs jūs par Linux enerģijas lietotāju.

Mēs demonstrācijā izmantosim šādu teksta failu.





This is a demo text file.
It is an amazing file that will help us all.
The sed command is also great for stream editing.
Want to learn how to use the command?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

1. Skatīt līniju diapazonu

Linux komandas, piemēram, galva un aste, izvada teksta faila pirmās vai pēdējās desmit rindas. Bet ko darīt, ja vēlaties iegūt saturu starp divām konkrētām faila rindām? Šādās situācijās var noderēt komanda sed.

Lai izvadītu saturu starp faila 3. un 5. rindu textfile.txt :

sed -n '3,5p' textfile.txt

The -n karogs neļauj sed parādīt raksta telpu katra cikla beigās. Varat arī izmantot -kluss un -kluss iespējas vietā -n . The lpp arguments nozīmē drukāt un tiek izmantots, lai lietotājam parādītu saskaņotās līnijas.

Izpildot iepriekš minēto komandu parauga failā, tiek iegūta šāda izvade.

The sed command is also great for stream editing.
Want to learn how to use the command?
This is another line in the file.

Lai izvadītu visu faila saturu, izņemot norādīto diapazonu, izmantojiet d vietā karogs lpp komandā:

sed '3,5d' textfile.txt

The d karodziņš izdzēš atbilstošās virknes no izvades un parāda pārējo saturu.

This is a demo text file.
It is an amazing file that will help us all.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

2. Parādiet rindas bez secības

Lai drukātu secīgas rindas starp vairākiem diapazoniem failā:

sed -n -e '1,2p' -e '5,6p' textfile.txt

Izeja:

This is a demo text file.
It is an amazing file that will help us all.
This is another line in the file.
This is the third general line in the file.

The -Un karogs palīdz izpildot vairākas darbības, izmantojot vienu komandu.

3. Ievietojiet atstarpi starp līnijām

Ja kāda iemesla dēļ vēlaties ievietot tukšas rindas starp katru teksta faila rindu, izmantojiet G arguments ar noklusējuma komandu sed.

kā pārbaudīt grafisko karti operētājsistēmā Windows 10
sed G textfile.txt

Lai izvadē ievietotu vairākas tukšas rindas, nododiet vairākas G argumentus atdala semikols ( ; ) raksturs.

sed 'G;G' textfile.txt

4. Nomainiet vārdu teksta failā

Ja katru konkrētā vārda gadījumu vēlaties aizstāt ar kādu citu vārdu, izmantojiet s un g argumenti ar komandu. Pamata sintakse vārdu aizstāšanai, izmantojot komandu sed, ir šāda:

sed s/originalword/replaceword/g filename

Izmantojot iepriekš minēto sintaksi, jūs varat aizstāt vārdu pārsteidzošs ar super failā textfile.txt :

sed s/amazing/super/g textfile.txt

The s arguments apzīmē aizstāšana un g komandu izmanto, lai aizstātu atbilstošo saturu ar norādīto aizstāšanas saturu.

Lai aizstātu vārda otro sastopamību ar sed, nododiet skaitli g arguments. Šajā gadījumā:

sed s/amazing/super/g2 textfile.txt

Ja vēlaties ignorēt rakstzīmju burtus, aizstājot vārdus, izmantojiet dot tā vietā g , kur i apzīmē ignorēt gadījumā.

sed s/Amazing/super/gi textfile.txt

Saistīts: Izmantojot Vi? Lūk, kā atvērt failu, pēc tam saglabāt un iziet

5. Aizstāt vārdus diapazonā

Varat arī aizstāt vārdus noteiktā diapazonā.

sed '2,5s/amazing/super/g' textfile.txt

6. Veiciet vairākas nomaiņas vienlaikus

Ja vēlaties veikt divas vai vairākas nomaiņas vienlaikus, vienkārši atdaliet komandas ar semikols ( ; ) raksturs.

sed 's/amazing/super/g;s/command/utility/gi' textfile.txt

Sistēma parādīs šādu izvadi.

This is a demo text file.
It is an super file that will help us all.
The sed utility is also great for stream editing.
Want to learn how to use the utility?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

7. Aizstājiet vārdus tikai tad, ja tiek atrasta atbilstība

Varat arī izmantot komandu sed, lai aizstātu vārdu tikai tad, ja rindā tiek atrasta konkrēta atbilstība. Piemēram, lai aizstātu vārdu uz ar an ja vārds apelsīns atrodas rindā:

sed -e '/orange/ s/a/an/g' textfile.txt

Izsniedzot iepriekš minēto komandu, tiks parādīts:

This is a demo text file.
It is an super file that will help us all.
The sed utility is also great for stream editing.
Want to learn how to use the utility?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is an orange.

Ņemiet vērā, ka vārds uz rindā Tas ir ābols netika nomainīts, jo sistēma neatrada vārdu apelsīns tajā.

8. Aizstāt vārdus, izmantojot regulārās izteiksmes

Tiem, kuri zina, kā lietot regulārās izteiksmes, operāciju veikšana ar virknēm, izmantojot komandu sed, kļūst daudz vienkāršāka. Jūs varat ieviest regulāras izteiksmes, lai uzlabotu komandas spēku.

Lai aizstātu visus vārda gadījumus Pārsteidzošs vai pārsteidzošs ar super :

sed -e 's/[Aa]mazing/super/g' textfile.txt

Līdzīgi jūs varat arī izmantot uzlabotas regulārās izteiksmes, lai izpildītu noteiktas darbības, izmantojot komandu sed.

9. Pipe sed ar citām komandām

Jūs varat arī piesaistīt sed ar citām Linux komandām. Piemēram, jūs varat cauruļvadu lspci komandu ar sed, lai izvadē pievienotu tukšas atstarpes starp rindām.

lspci | sed G

Lai aizstātu konkrētus vārdus ip maršruta šovs komanda:

ip route show | sed s/src/source/g

Iepriekš minētā komanda aizstāj vārdu avots sākotnējā vārda vietā src .

Saistīts: Kā izmantot komandu Atrast, lai meklētu failus Linux

10. Rediģējiet un dublējiet sākotnējo failu

Strādājot ar sistēmas failiem, ir svarīgi dublēt sākotnējo failu, veicot izmaiņas. Tas palīdzēs jums atjaunot izmaiņas, ja kaut kas sabojājas.

Lai dublētu sākotnējo failu, izmantojot sed, izmantojiet -i karogs komandā.

nevar atrast starpniekserveri
sed -i'.backup' 's/amazing/super/g' textfile.txt

Tiks izveidots jauns fails ar nosaukumu textfile.txt.backup . Varat pārbaudīt, vai abi faili atšķiras, izmantojot dif komandu.

diff textfile.txt textfile.txt.backup

Stīgu rediģēšana Linux sistēmā ar sed

Dažreiz, kamēr jūs strādājat ar teksta failiem terminālī, izvades formatēšana un rediģēšana labākai lasīšanai kļūst par obligātu. Sed un awk ir komandrindas utilītas operētājsistēmā Linux, kas ļauj lietotājam efektīvi strādāt ar teksta failiem, sadalot datus atsevišķās rindās.

Daudziem lietotājiem ir grūti iegaumēt komandas sed argumentus un karodziņus, jo ir pieejami daudzi no tiem. Zinot, kā iegūt komandrindas rokasgrāmatas jebkurai Linux komandai, jūs varēsit viegli izkļūt no šādām situācijām.

Kopīgot Kopīgot Čivināt E -pasts 7 veidi, kā iegūt komandrindas palīdzību operētājsistēmā Linux

Visas būtiskās komandas, lai uzzinātu par Linux komandām no komandrindas

Lasīt Tālāk
Saistītās tēmas
  • Linux
  • Teksta redaktors
  • Terminālis
  • Komandu uzvedne
Par autoru Deepesh Sharma(79 raksti publicēti)

Deepesh ir MUO Linux jaunākais redaktors. Viņš raksta informatīvus ceļvežus par Linux, lai sniegtu svētlaimīgu pieredzi visiem jaunpienācējiem. Neesat pārliecināts par filmām, bet, ja vēlaties runāt par tehnoloģijām, viņš ir jūsu puisis. Brīvajā laikā jūs varat atrast viņu lasot grāmatas, klausoties dažādus mūzikas žanrus vai spēlējot ģitāru.

Vairāk no Deepesh Sharma

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu