jsem nový uživatel Linuxu. Chtěl jsem najít text s názvem “ foo „a nahradit“ bar „v souboru s názvem“ hosts.txt.“Jak mohu pomocí příkazu sed najít a nahradit v systému Linux nebo UNIX?
sed je zkratka pro stream editor. Přečte daný soubor a upraví vstup podle seznamu příkazů sed. Ve výchozím nastavení je vstup zapsán na obrazovku, ale můžete vynutit aktualizaci souboru.,
Najít a nahradit text v souboru pomocí sed příkaz
postup pro změnu textu v souborech pod Linux/Unix pomocí sed:
- Použití Stream EDitor (sed) takto:
- sed-i ‚s/staré-text/nový text/g‘ vstupní.txt
- s je náhradou příkazu sed pro najít a nahradit
- říká sed najít všechny výskyty ‚starý-text a nahradit s ‚nový text‘ v souboru s názvem vstupu.txt
- ověřte, že byl soubor aktualizován:
- více vstupů.,txt
podívejme se na syntaxi a použití v detailech.
Syntaxe: sed najít a nahradit text
Příklady, které používají sed najít a nahradit
Nechte nás vytvořit textový soubor s názvem hello.,ws:sed 's/foo/bar/g' hello.txt
Ukázkové výstupy:
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 příkaz problémů
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.
Jak používat sed, aby odpovídaly slovo a provést najít a nahradit
V tomto příkladu pouze najít slovo „láska“ a nahradit je „nemocný“ pokud řádek obsahu konkrétní řetězec, jako jsou FOO:sed -i -e '/FOO/s/love/sick/' input.txt
Použijte příkaz cat ověřit nové změny:cat input.txt
Rekapitulace: Pomocí sed najít a nahradit
🐧 Získejte nejnovější Návody na Linuxu, Open Source & DevOps prostřednictvím RSS kanálu nebo týdenního e-mailového zpravodaje.
🐧 4 komentáře tak daleko… přidat jeden ↓
Kategorie | Seznam Unix a Linux příkazy |
---|---|
Správa Souborů | kočka |
Firewall | Alpine Zeď • 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 |