Strona 1 z 1

Bash, jak zamienić dany tekst na inny?

: 25 grudnia 2012, 17:08
autor: mpm1122
Witam.
D
opiero poznaję potęgę Linuksa i proszę o wyrozumiałość. Uczę się i system pada po tygodniu i dlatego, że nie chce mi się od nowa wszystkiego ustawiać i instalować zrobiłem skrypt w bashu (jego też dopiero zaczynam ogarniać). Instaluje on wszystko jak należy, ale przychodzi czas na konfigurację i tu zaczynają się schody. Nie wiem zbytnio jak zrobić aby skrypt zamieniał dane wartości na inne. Dokładniej chodzi mi o repozytoria, nie chcę ich dodawać przez polecenie echo bo nie zawsze mi to zaskoczyło/ Próbowałem zrobić to z pomocą seda, ale coś mi nie wyszło.

Muszę zamienić to:

Kod: Zaznacz cały

deb http://security.debian.org squeeze/updates main contrib non-free
Na to:

Kod: Zaznacz cały

deb http://ftp.pl.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.pl.debian.org/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
deb http://www.deb-multimedia.org squeeze main non-free
deb http://ftp.pl.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.pl.debian.org/debian/ wheezy main contrib non-free
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free
deb http://www.deb-multimedia.org wheezy main non-free
Proszę o pomoc.

: 25 grudnia 2012, 17:29
autor: Rafal_F
A co ci w echo nie działało?

Kod: Zaznacz cały

echo "Jakis tekst" > plik
Zamieni całą zawartość pliku na napis "Jakis tekst", a

Kod: Zaznacz cały

echo "Jakis tekst" >> plik
nadpisze plik na końcu o napis "Jakis tekst".

Ps. Zdecyduj się albo squeeze albo wheezy, bo zrobi się straszny bałagan.

Ps2. Próba przywrócenia niesprawnego systemu do działania np. przy użyciu trybu ratunkowego, lub różnego rodzaju dystrybucji narzędziowych live może być dobrym sposobem nauki i zdobywania doświadczenia.

Ps3. Skoro tak często system wymaga reinstalacji to może lepiej pomyśleć o jakimś narzędziu do klonowania dysku i odtwarzać system z klona?

: 25 grudnia 2012, 19:40
autor: fnmirk

: 25 grudnia 2012, 20:41
autor: mpm1122
Dobrze, dziękuję za pomoc, ale mam do Was jeszcze jedno małe pytanie. Jak dodać jakiś tekst na początku tekstu, a nie na końcu? Np. mam plik liczby.txt:

Kod: Zaznacz cały

12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
i chciałbym usunąć pierwsze 7 liczb, więc robię coś takiego:

Kod: Zaznacz cały

sed -i 1,+6d  liczby.txt
Ale teraz chcę dodać takie liczby:

Kod: Zaznacz cały

2
3
4
6
7
9
7
5
6
4
Próbowałem przez echo, ale dodawało je na końcu, a mnie zależy aby były na początku. Możecie powiedzieć mi jak to zrobić?

: 27 grudnia 2012, 18:53
autor: lessmian2
Np. tak:

Kod: Zaznacz cały

sed -i '1,1s/^/2\n3\n\4\n/' liczby.txt