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: Seskupování příkazů?  (Přečteno 2446 krát)

Ji31

  • Aktivní člen
  • *
  • Příspěvků: 182
Seskupování příkazů?
« kdy: 27 Srpna 2006, 02:04:26 »
Dají se nějak navázat příkazy na jiný příkaz?
Např (imaginární příklad):

odebrat soubory: rm
najít všechny soubory daného vlastníka: find / -user pepa

A jak smažu všechny soubory vlastníka pepy?
Linux is like a teepee. No Windows, no Gates, Apache inside

snop

  • Aktivní člen
  • *
  • Příspěvků: 366
Seskupování příkazů?
« Odpověď #1 kdy: 27 Srpna 2006, 08:31:56 »
mozes to napsat do souboru ale na zacatku musis mat #! /bin/sh aby bash vedel ze je to spustitelny soubor a ma vic prikazu a nakonec tento soubor chmodnout aby byl spustitelny
Kód: [Vybrat]
sudo chmod +x menosouboru
...........................--== sNop ==--............................
-- pgp - http://radeonvmod.ic.cz/keys/snop3.asc --
              AMD Sempron 2800+  1024MB RAM               ATI Radeon 9550        2x80GB HDD

Ji31

  • Aktivní člen
  • *
  • Příspěvků: 182
Seskupování příkazů?
« Odpověď #2 kdy: 27 Srpna 2006, 10:24:50 »
Citace: snop
mozes to napsat do souboru ale na zacatku musis mat #! /bin/sh aby bash vedel ze je to spustitelny soubor a ma vic prikazu a nakonec tento soubor chmodnout aby byl spustitelny
Kód: [Vybrat]
sudo chmod +x menosouboru
No jo, taky užitečná informace, děkuju, ale jak to ale skombinuju tak, aby se smazaly všechny soubory daného usera?

Přeci když napíšu: "rm -R find / -user pepa" tak to nebude fungovat, nebo ano?
Linux is like a teepee. No Windows, no Gates, Apache inside

kremso

  • Aktivní člen
  • *
  • Příspěvků: 117
Seskupování příkazů?
« Odpověď #3 kdy: 27 Srpna 2006, 12:49:25 »
find / -user pepa -exec rm -R {} \; 2>/dev/null

Ji31

  • Aktivní člen
  • *
  • Příspěvků: 182
Seskupování příkazů?
« Odpověď #4 kdy: 27 Srpna 2006, 12:52:00 »
Citace: kremso
find / -user pepa -exec rm -R {} \; 2>/dev/null
Aha. A mohl bych poprosit o vysvětlení? Co znamenají ty závorky, lomítko, středník a ta dvojka?
Linux is like a teepee. No Windows, no Gates, Apache inside

snop

  • Aktivní člen
  • *
  • Příspěvků: 366
Seskupování příkazů?
« Odpověď #5 kdy: 27 Srpna 2006, 13:34:07 »
tak to by zaujimalo i mne
...........................--== sNop ==--............................
-- pgp - http://radeonvmod.ic.cz/keys/snop3.asc --
              AMD Sempron 2800+  1024MB RAM               ATI Radeon 9550        2x80GB HDD

kremso

  • Aktivní člen
  • *
  • Příspěvků: 117
Seskupování příkazů?
« Odpověď #6 kdy: 27 Srpna 2006, 16:06:06 »
-exec je parameter prikazu find, to co je za nim sa berie ako novy prikaz az po \; - to co by bolo za \; by sa bralo ako parameter prikazu find. Tatko sa najde nejaky subor, povedzme  index.html a vykona sa rm -R index.html : za tie zatvorky {} sa nahradi meno najdeneho suboru.

No a to uplne na konci je presmerovanie chyboveho vystupu, tj. aby sa nezobrazovali hlasky ako acces denied.

Pavelp

  • Host
Seskupování příkazů?
« Odpověď #7 kdy: 27 Srpna 2006, 21:49:37 »
Citace: Ji31
Citace: kremso
find / -user pepa -exec rm -R {} \; 2>/dev/null
Aha. A mohl bych poprosit o vysvětlení? Co znamenají ty závorky, lomítko, středník a ta dvojka?
$ man bash, (info bash), (pinfo bash)

Sqela knizka od Michala Brandejse: Unix-Linux.

Jinak to nepude.

Martin Majliš

  • Návštěvník
  • Příspěvků: 34
    • http://martin.majlis.cz/
Seskupování příkazů?
« Odpověď #8 kdy: 30 Srpna 2006, 01:10:56 »
Citace: kremso
find / -user pepa -exec rm -R {} \; 2>/dev/null
S parametrem exec jsem mel jednou problem v cygwinu a navic se mi nelibi ten strednik (je to podle mne komplikovanejsi).
Tady rozebira vyhody pouziti exec v porovnani s xargs: http://www.grymoire.com/Unix/Find.html#uh-13


A k seskupovani prikazu: UNIX/Linux se prednasi snad na kazde VS, ktera ma neco spolecneho s IT, tak muzes zkusit kouknout do skript:

http://www.google.com/search?q=site%3Acvut.cz+Unix
http://www.google.com/search?q=site%3Acuni.cz+Unix
http://www.google.com/search?q=site%3Avutbr.cz+Unix

 

Provoz zaštiťuje spolek OpenAlt.