Sådan bruges sed til at finde og erstatte tekst i filer i Linu. / Uni. shell

jeg er en ny Linu. – bruger. Jeg ønskede at finde teksten kaldet “foo” og erstattet til “bar” i filen med navnet “hosts.t .t.”Hvordan bruger jeg sed-kommandoen til at finde og erstatte på Linu?eller UNI?-lignende system?
sed står for stream editor. Det læser den givne fil, ændre input som angivet af en liste over sed kommandoer. Som standard er input skrevet til skærmen, men du kan tvinge til at opdatere filen.,

Find og erstat tekst i en fil ved hjælp af sed kommando

Den procedure for at ændre tekst i filer under Linux/Unix bruger sed:

  1. Brug Stream EDitor (sed), som følger:
  2. sed -i ‘s/gamle-tekst/nye-tekst/g’ input.t .t
  3. S er erstatningskommandoen for sed for find og erstat
  4. det fortæller sed at finde alle forekomster af ‘gammel tekst’ og erstatte med ‘ny tekst’ i en fil med navnet input.t .t
  5. Kontroller, at filen er blevet opdateret:
  6. mere input.,t lett

lad os se syntaks og brug i detaljer.

syntaks: sed find og erstat tekst

eksempler, der bruger sed til at finde og erstatte

lad os oprette en tekstfil kaldet hello.,ws:
sed 's/foo/bar/g' hello.txt
Prøve resultater:

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 kommando problemer

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.

Hvordan at bruge sed til at matche ord og udføre søg og erstat

I dette eksempel kun finde ordet ‘kærlighed’ og erstatte det med ‘syg’ hvis line indhold en bestemt streng som FOO:
sed -i -e '/FOO/s/love/sick/' input.txt
Brug kat kommando til at kontrollere nye ændringer:
cat input.txt

Resumé: ved Hjælp af sed til at finde og erstatte

🐧 Bemærk støtte mit arbejde på Patreon eller med en donation.,
Get få de nyeste tutorials på Linu., Open Source & DevOps via RSS-feed eller ugentligt e-mail-nyhedsbrev.
4 4 kommentarer hidtil… tilføj en ↓
Kategori Liste af Unix-og Linux-kommandoer
filhåndtering kat
Firewall Alpine Fires • 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

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Videre til værktøjslinje