jag är en ny Linux-användare. Jag ville hitta texten som heter ” foo ” och ersatte till ”bar” i filen som heter ”hosts.txt.”Hur använder jag sed-kommandot för att hitta och ersätta på Linux eller UNIX-liknande system?
sed står för stream editor. Den läser den givna filen, ändra inmatningen som anges av en lista med sed-kommandon. Som standard skrivs ingången till skärmen, men du kan tvinga att uppdatera filen.,
hitta och ersätt text i en fil med kommandot sed
proceduren för att ändra texten i filer under Linux/Unix med sed:
- använd Stream EDitor (sed) enligt följande:
- sed-i ’s/old-text/new-text/g” Input.txt
- s är substitutionskommandot för sed för Sök och ersätt
- det talar om för sed att hitta alla förekomster av ”old-text” och ersätta med ”new-text” i en fil som heter input.txt
- kontrollera att filen har uppdaterats:
- mer inmatning.,txt
Låt oss se syntax och användning i detaljer.
Syntax: sed hitta och ersätt text
exempel som använder sed för att hitta och ersätta
låt oss skapa en textfil som heter hello.,ws:sed 's/foo/bar/g' hello.txt
Exempelutgångar:
The is a test file created by nixCrft for demo purpose.bar is good.Foo is nice.I love FOO.
The is a test file created by nixCrft for demo purpose.bar is good.bar is nice.I love bar.
sed-kommandoproblem
sed: 1: "s/http:///https://www.c ...": bad flag in substitute command: '/'
https://www.cyberciti.biz is outdate.Consider using https:// for all your needs.
hur man använder sed för att matcha ord och ord.utför sök och ersätt
i det här exemplet hittar du bara ordet”kärlek”och ersätter det med”sjuk”om linjeinnehåll en specifik sträng som Foo:sed -i -e '/FOO/s/love/sick/' input.txt
Använd Cat-kommandot för att verifiera nya ändringar:cat input.txt
Recap: använda sed för att hitta och ersätta
🐧 Få de senaste tutorials på Linux, Öppen Källkod & DevOps via RSS-flöde eller Veckovisa nyhetsbrev.
4 kommentarer hittills… Lägg till en ↓
Kategori | lista över Unix-och Linux-kommandon |
---|---|
filhantering | katt |
brandvägg | Alpine awall • CentOS 8 • openSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.,04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.,04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |