za pomocą basha dodać tekst w środku innego pliku jak ?[solved]
-
- Sędziwy Jeż
- Posty: 57
- Rejestracja: 09 paź 2006, 16:58
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
za pomocą basha dodać tekst w środku innego pliku jak ?[solved]
Mam plik html a w nim:
<Config>
<rule xxx>
</rule>
</Config>
chciałbym dodać nową regułę w środku ale przecież nie mogę tego zrobić tak :
echo "<rule>" >> plik.html
bo doda sie na koncu , wiec jak to zrobić ?
<Config>
<rule xxx>
</rule>
</Config>
chciałbym dodać nową regułę w środku ale przecież nie mogę tego zrobić tak :
echo "<rule>" >> plik.html
bo doda sie na koncu , wiec jak to zrobić ?
- beluosus
- Zakręcona Traszka
- Posty: 695
- Rejestracja: 01 paź 2006, 15:32
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Xfce
- Architektura: x86
- Kontakt:
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
Może tak?
Kod: Zaznacz cały
sed -i 's/<\/Config>/<rule yyy>\n<\/rule>\n<\/Config>/' plik
-
- Sędziwy Jeż
- Posty: 65
- Rejestracja: 11 gru 2008, 11:20
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
Uzyj seda.
Cos w stylu
Cos w stylu
Kod: Zaznacz cały
sed -i.bak '10a costam' filename
sed -i.bak '10i costam' filename
sed -i.bak '/re/a wiersz' filename
-
- Sędziwy Jeż
- Posty: 57
- Rejestracja: 09 paź 2006, 16:58
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
zrobilem tak :
sed -i 's/...sdfs="$1"/'
i mi traktuje zmienne jako tekst :/ jak to zrobić aby zmienne traktowalo jako zmienne
sed -i 's/...sdfs="$1"/'
i mi traktuje zmienne jako tekst :/ jak to zrobić aby zmienne traktowalo jako zmienne
-
- Sędziwy Jeż
- Posty: 65
- Rejestracja: 11 gru 2008, 11:20
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
Bash w pojedynczych cudzyslowach nie interpoluje zmiennych.
Daj
lub
.
Daj
Kod: Zaznacz cały
... "s/...=\"$1\"/" ...
Kod: Zaznacz cały
... "s/...='$1'/" ...
-
- Sędziwy Jeż
- Posty: 57
- Rejestracja: 09 paź 2006, 16:58
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
ale w zmiennej mam sciezke a w sciezce sa / ktore sed zinterpretuje po swojemu , trzeba by najpirew te / w zmiennej pozamieniać na \/ ....
-
- Sędziwy Jeż
- Posty: 65
- Rejestracja: 11 gru 2008, 11:20
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
Jako workaround mozesz uzyc w sedzie innego delimitera. Np
Oczywiscie przy zalozeniu, ze znaku @ nie bedzie w $1.
Kod: Zaznacz cały
sed -e "s@$@ ble@" ...
-
- Sędziwy Jeż
- Posty: 57
- Rejestracja: 09 paź 2006, 16:58
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: za pomocą basha dodać tekst w środku innego pliku jak ?
wreszcie działa, dzięki wielkie.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 9 gości