Forum Linux.pl
Programowanie => Bash, skrypty powłoki => Wątek zaczęty przez: Sazen w 2005-05-29, 21:28:21
-
Zainstalowałem modem, skonfigurowałem połaczenie i drivery- wszystko Ok. Po wydaniu komendy startadsl nic sie nie dzieje tzn. komenda przyjęta ale nie ma internetu...szukałem rozwiązania ale nic pomocnego nie znalazłem.
-
2005-05-29 21:28:21 Socom napisał:
> Zainstalowałem modem, skonfigurowałem połaczenie i drivery- wszystko Ok. Po wydaniu komendy
> startadsl nic sie nie dzieje tzn. komenda przyjęta ale nie ma internetu...szukałem rozwiązania
> ale nic pomocnego nie znalazłem.
Aha
-
2005-05-29 21:28:21 Socom napisał:
> Zainstalowałem modem, skonfigurowałem połaczenie i drivery- wszystko Ok. Po wydaniu komendy
> startadsl nic sie nie dzieje tzn. komenda przyjęta ale nie ma internetu...szukałem rozwiązania
> ale nic pomocnego nie znalazłem.
Szkoda.
-
2005-05-29 21:28:21 Socom napisał:
> Zainstalowałem modem,
Jaki modem?
Jak zainstalowałeś?
> skonfigurowałem połaczenie i drivery-
Jak? Jakie drivery?
> wszystko Ok.
Skąd wiesz?
>Po wydaniu komendy startadsl nic sie nie dzieje tzn. komenda przyjęta ale nie ma internetu...
Ja mam internet, więc z nim wszystko chyba ok. ;)
>szukałem rozwiązania ale nic pomocnego nie znalazłem.
Czego szukałeś i gdzie?
-
Modem Sagem 800 i driver eagle-usb.2.3.1, przy instalacji nie było żadnych błędów. Potem poprosił o skonfigurowanie połączenia tzn login i hasło. Na koniec komunikat :\\' Wydanie komendy startadsl połaczy z internetem\\' i czy dodac to do autostartu systemu. Ja jestem zielony z tym więc pytam...
-
2005-05-29 21:48:17 Socom napisał:
> Modem Sagem 800 i driver eagle-usb.2.3.1, przy instalacji nie było żadnych błędów. Potem
> poprosił o skonfigurowanie połączenia tzn login i hasło. Na koniec komunikat :\\' Wydanie komendy
> startadsl połaczy z internetem\\' i czy dodac to do autostartu systemu. Ja jestem zielony z tym
> więc pytam...
Jeśli podłączyłeś modem zgodnie z instrukcjami, to połączenie powinno faktycznie zostać nawiązane. Sprawdź wyjście polecenia:
eaglestat
..żeby zobaczyć czy modem jest \\'operational\\'.
Jeśli nie jest wykonaj:
eaglectrl -w && startadsl
-
Ok. Poradziłem sobie. Nie ładowało sie cos przy starcie.
-
Tu mam fragm.skrytpu:
....
BASENAME=$1
BASENAME=${BASENAME#*/*/}
BASENAME=${BASENAME%/*}
OUTDIR=/video/filmy
cd $OUTDIR
1) vdrsync.pl -m -basename $BASENAME -cut -o $OUTDIR -script-output=$OUTDIR/$BASENAME.log $1/ > /dev/null 2>&1 &
# skrypt wykonuje polecenie w wyniku czego powstają dwa pliki: BASENAME.mpv i BASENAME*.mpa, następne polecenie można wykonać dopiero po zakończeniu operacji 1) i ma być:
2) mplex -f 8 -o /video/filmy/$BASENAME.mpg $BASENAME.mpv $BASENAME*.mpa
Rzecz w tym, ze polecenie 2) uruchomia się, kiedy jeszcze nie są kompletne pliki powstałe w wyniku polecenia 1)
Proszę o pomoc jakie polecenia mam wstawić tak aby rozpoczęło się wykonywanie komendy 2) w odpowiednim momencie.
-
2005-05-29 18:56:33 Tad napisał:
> 1) vdrsync.pl -m -basename $BASENAME -cut -o $OUTDIR -script-output=$OUTDIR/$BASENAME.log $1/
> > /dev/null 2>&1 &
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Nie uruchamiać 1-szego polecenia w tle! :) czyli skasuj ostatni znak '&' w 1-szym poleceniu...
Wojtek
-
> Nie uruchamiać 1-szego polecenia w tle! :) czyli skasuj ostatni znak '&' w 1-szym
> poleceniu...
>
> Wojtek
-------------
Dziekuję....
Wygląda na to , że o to mi chodziło.
Jeśli jeszcze ktośby byłby miły i wytłumaczył mi co oznacza komenda: 2>&1,
oraz > /dev/null 2>&1.
-
2005-05-29 20:23:20 Tad napisał:
> Jeśli jeszcze ktośby byłby miły i wytłumaczył mi co oznacza komenda: 2>&1,
> oraz > /dev/null 2>&1.
>
>
2 to standardowe wyjście błędu (stderr), a 1 to standardowe wyjście (stdout), zatem 2>&1 oznacza 'dołącz standardowe wyjście błędu do standardowego wyjścia (nie rozdzielaj ich na osobne)'.
> /dev/null oznacza 'przekieruj wyjście do /dev/null', czyli krótko i brzydko mówiąc 'olej wyjście' ;)
-
> Dziekuję....
> Wygląda na to , że o to mi chodziło.
> Jeśli jeszcze ktośby byłby miły i wytłumaczył mi co oznacza komenda: 2>&1,
> oraz > /dev/null 2>&1.
>
>
Znak '>' to przekierowanie wyjścia programu.
0, 1, 2 to standardowe deskryptory plików, które otrzymuje każdy proces uruchamiany w linuksie. Domyślnie powiązane są z urządzeniem termianala.
1 to standardowe wyjście
2 to standardowe wyjście błędu
0 to standardowe wejście
Na standardowe wejście trafiają znaki z klawiatury, a wyjścia wysyłają znaki na ekran monitora. Dzięki znakowi '>' lub '>>' można zmienić to zachowanie.
I tak np.
'1>plik.log' przekieruje standardowe wyjście do pliku plik.log
'2>&1' przekieruje standardowe wyjście błędu tam, gdzie skierowane jest standardowe wyjście
'> /dev/null' przekieruje wyjście w pustkę :)
Więcej na google :)