Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Spouštění skriptu v terminálu [vyřešeno]  (Přečteno 2099 krát)

Jan Skořepa

  • Stálý člen
  • **
  • Příspěvků: 1253
    • JaSovy stránky
Spouštění skriptu v terminálu [vyřešeno]
« kdy: 26 Července 2007, 09:17:22 »
Dobrý den,

mám skript v bashi ve spustitelném souboru skript.sh:
Kód: [Vybrat]
#!/bin/bash

příkaz1
příkaz2
...
příkazx
Když jednotlivé příkazy spustím napsáním v terminálu, na obrazovce se spustí i aktuální výpis toho, co se zrovna provádí (např. komprese, archivace, konverze). Když spustím ten skript, nevím, co zrovna probíhá, ani jestli už se skript ukončil, nebo se stále ještě provádí.

Nevíte prosím někdo, jak to udělat, aby se poklepáním na jméno skriptu spustilo též i terminálové okno s výpisem o aktuálně prováděných operacích? Díky moc.

Našel jsem jen tohle:
Kód: [Vybrat]
xterm -e '<příkaz pro terminál>'takže bych to asi musel ve skriptu řešit takto:
Kód: [Vybrat]
#!/bin/bash

xterm -e 'příkaz1'
xterm -e 'příkaz2'
xterm -e '...'
xterm -e 'příkazx'
Zdá se mi to komplikované, tohle ke každému řádku přidávat. Nešlo by to řešit jednodušeji? Díky moc za odpovědi.
« Poslední změna: 11 Července 2009, 21:51:03 od Jan Skořepa »
MB ASUS P5KPL/EPU - CPU Pentium(R) Dual-Core E5300 2600 MHz - RAM 4 GB DDR2 - GK GIGABYTE GeForce 8400 GS - OS Debian Stable (64bit)

snop

  • Aktivní člen
  • *
  • Příspěvků: 366
Spouštění skriptu v terminálu
« Odpověď #1 kdy: 26 Července 2007, 10:30:31 »
vytvor skript, kde napis vsetky pozadovane prikazy. ted si vytvor druhy skript, kterym budes spoustet prvy skript a to nasledovne
Kód: [Vybrat]
#!/bin/sh
xterm -e "prvy skript && read"
kdyz chces, aby se vzdy vykonal prikaz read, musis zabezpecit, aby prvy skript vzdy skoncit true, teda posledny prikaz musi byt
Kód: [Vybrat]
exit 0
...........................--== sNop ==--............................
-- pgp - http://radeonvmod.ic.cz/keys/snop3.asc --
              AMD Sempron 2800+  1024MB RAM               ATI Radeon 9550        2x80GB HDD

Jan Skořepa

  • Stálý člen
  • **
  • Příspěvků: 1253
    • JaSovy stránky
Spouštění skriptu v terminálu
« Odpověď #2 kdy: 26 Července 2007, 11:12:37 »
Díky za odpověď, večer to vyzkouším.

A co je to ten příkaz "read"? K čemu je dobrý? Nebo to je jen jako příklad řetězení skriptů?
MB ASUS P5KPL/EPU - CPU Pentium(R) Dual-Core E5300 2600 MHz - RAM 4 GB DDR2 - GK GIGABYTE GeForce 8400 GS - OS Debian Stable (64bit)

snop

  • Aktivní člen
  • *
  • Příspěvků: 366
Spouštění skriptu v terminálu
« Odpověď #3 kdy: 26 Července 2007, 14:19:53 »
Citace: albi
Díky za odpověď, večer to vyzkouším.

A co je to ten příkaz "read"? K čemu je dobrý? Nebo to je jen jako příklad řetězení skriptů?
Kód: [Vybrat]
man read;)
po vypsani vsech vystupu do terminalu, se nakonec provede prikaz read, ktery ceka na stisk klavesy, jinak by ti iba preblikl xterm a nevidel by si zadnej vystup
...........................--== sNop ==--............................
-- pgp - http://radeonvmod.ic.cz/keys/snop3.asc --
              AMD Sempron 2800+  1024MB RAM               ATI Radeon 9550        2x80GB HDD

Jan Skořepa

  • Stálý člen
  • **
  • Příspěvků: 1253
    • JaSovy stránky
Spouštění skriptu v terminálu
« Odpověď #4 kdy: 26 Července 2007, 21:35:55 »
Příkaz v terminálu "man read" mi napíše, že "Manuálová stránka pro read nebyla nalezena". :(

Ale příkaz "read" mi funguje - je to super, protože bych to ponechání zobrazeného okna už nemusím řešit příkazem "sleep" jako doposud v jiných skriptech.

Zkusil jsem to podle Vašeho návrhu a funguje mi to. Díky moc! :)
« Poslední změna: 11 Července 2009, 21:50:42 od Jan Skořepa »
MB ASUS P5KPL/EPU - CPU Pentium(R) Dual-Core E5300 2600 MHz - RAM 4 GB DDR2 - GK GIGABYTE GeForce 8400 GS - OS Debian Stable (64bit)

kkaarreell

  • Stálý člen
  • **
  • Příspěvků: 1072
Spouštění skriptu v terminálu
« Odpověď #5 kdy: 27 Července 2007, 13:22:15 »
Citace: albi
Příkaz v terminálu "man read" mi napíše, že "Manuálová stránka pro read nebyla nalezena". :(
To bude zrejme proto, ze prikaz read je soucasti shellu a ne samostatny program, musel byste jej tedy hledat v manualove strance bashe.

Jan Skořepa

  • Stálý člen
  • **
  • Příspěvků: 1253
    • JaSovy stránky
Spouštění skriptu v terminálu
« Odpověď #6 kdy: 27 Července 2007, 13:27:22 »
Aha, já totiž reagoval na to, jak mi psal snop, že abych zjistil, co příkaz "read" dělá, tak mám napsat "man read". Tak díky za vysvětlení. :)
MB ASUS P5KPL/EPU - CPU Pentium(R) Dual-Core E5300 2600 MHz - RAM 4 GB DDR2 - GK GIGABYTE GeForce 8400 GS - OS Debian Stable (64bit)

snop

  • Aktivní člen
  • *
  • Příspěvků: 366
Spouštění skriptu v terminálu
« Odpověď #7 kdy: 27 Července 2007, 14:15:44 »
kdyz mas nainstalovane man stranky manpages-posix, glibc-doc a manpages-dev tak funguje i man read. nevim presnev kterem baliku to je, ale mysli ze v man strankach posixu, funkcne by to i sedelo
...........................--== sNop ==--............................
-- pgp - http://radeonvmod.ic.cz/keys/snop3.asc --
              AMD Sempron 2800+  1024MB RAM               ATI Radeon 9550        2x80GB HDD

 

Provoz zaštiťuje spolek OpenAlt.