Tato otázka zde již obsahuje odpovědi :Jak přidat text na konec řádku, když se vzor shoduje?
(5 odpovědí)
Uzavřeno před 4 lety.
Linux
(5 odpovědí)
Uzavřeno před 4 lety.
V souboru mám následující blok kódu:
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2
Chci vyhledat všechny řádky, které měly tc_
klíčové slovo a přidejte status=D
na konci těch řádků. Výše uvedené položky budou vypadat takto
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1 status=D
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2 status=D
K tomu používám následující příkaz:
sed -i '/tc_/a status=D' app.conf
Ale vidím status=D
je po novém řádku. Nechci kvůli tomu nový řádek. Měl by být připojen s „ ‘ (mezera) .
Přijatá odpověď:
zkuste
sed -e '/tc_/s/$/ status=D/'
kde
/tc_/
na řádku, kde se nachází tc_,s
náhradník,/$
konec řádku,/ status=D/
tímto řetězcem
pokud to vypadá OK, přidejte -i
upravit na místě.
(nejlépe nekomplikované) Jak se vyhnout opravám pravopisu při použití příkazu `mv` Zsh?
Jak si zapamatovat Jak používat přesměrování?