abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 19:44 | IT novinky

Americké společnosti omezují spolupráci se společností Huawei, protože Ministerstvo obchodu Spojených států amerických přidalo Huawei na černou listinu. Omezení již oznámili Google, Qualcomm, Intel, Xilinx nebo Broadcom. Google omezí přístup k Androidu a Google Play. Existujících zařízení by se to nemělo týkat. Prohlášení společnosti Huawei.

Ladislav Hagara | Komentářů: 6
dnes 16:47 | Nová verze
Vyšla nová verze Strongswan 5.8.0, multiplatformní implementace ipsec řešení. Mezi hlavní novinky patří podpora nového virtuálního interface XFRM, který je součástí kernelu od verze 4.19. Dále přibyla podpora IPv6 do backendu i pluginu aplikace NetworkManager, nebo např. podpora zašifrovaných hesel v utf-8 přes EAP-MSCHAPv2. Kompletní seznam změn viz changelog.
Max | Komentářů: 0
včera 00:22 | Pozvánky

Richard Stallman, zakladatel hnutí svobodného softwaru, projektu GNU a Free Software Foundation, vystoupí 6. června od 17:30 v Brně v kině Scala se svou přednáškou Free Software Movement and GNU/Linux Operating System. Přednášku organizuje Ústav práva a technologií Masarykovy univerzity.

Ladislav Hagara | Komentářů: 33
17.5. 21:11 | IT novinky

Hewlett Packard Enterprise (NYSE:HPE) kupuje společnost Cray Inc. (Nasdaq:CRAY) za přibližně 1,3 miliardy dolarů. Výrobce superpočítačů Cray má v seznamu 500 nejvýkonnějších superpočítačů na světě TOP500 aktuálně 52 superpočítačů. S Intelem staví další superpočítač Aurora. S AMD staví superpočítač za 600 milionů dolarů s názvem Frontier. Ten by měl v roce 2021 převzít vedení v TOP500.

Ladislav Hagara | Komentářů: 4
17.5. 19:44 | Zajímavý projekt

Ondřej Kokešpodcastu Dataři představuje projekt Česká otevřená data. Jedná se o sadu skriptů, které stahují především finanční data poskytovaná státními institucemi. V rozhovoru vysvětluje, že ke správné interpretaci dat jsou potřeba doménové znalosti, a popisuje zkušenosti, jak získat dokumentaci, která u datových sad často chybí.

Fluttershy, yay! | Komentářů: 0
17.5. 10:11 | Zajímavý projekt

Nadace XPRIZE vyhlásila před pěti lety soutěž Global Learning XPRIZE o nejlepší open source výukový program nebo inovativní způsob výuky, který umožní dětem v rozvojových zemích samostatně se naučit číst, psát a počítat. Tento týden byly vyhlášeny výsledky (YouTube). O první místo a 10 milionů dolarů se podělili Kitkit School a onebillion. Pět vítězných výukových programů bylo zveřejněno na GitHubu.

Ladislav Hagara | Komentářů: 19
17.5. 06:00 | Komunita

Dalších šest produktů od společnosti ThinkPenguin získalo certifikaci RYF (Respects Your Freedom, Respektuje vaši svobodu) udělovanou Nadací pro svobodný software (FSF). Certifikaci RYF má nově například také převodník z USB na paralelní port (LPT). Certifikace RYF byla představena v říjnu 2012.

Ladislav Hagara | Komentářů: 9
16.5. 23:11 | Pozvánky

Dnes je Světový den přístupnosti, anglicky Global Accessibility Awareness Day (GAAD, Wikipedie). Světový den přístupnosti vznikl v roce 2012. Jeho smyslem je šířit osvětu v této oblasti mezi širokou veřejností a motivovat ji k diskusím, přemýšlení a chuti dozvědět se o tématice přístupnosti webu, dokumentů, software, mobilních aplikací, asistivních technologiích či potřebách lidí s nejrůznějším postižením něco nového. O víkendu

… více »
Ladislav Hagara | Komentářů: 0
16.5. 19:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 164. brněnský sraz, který proběhne v pátek 17. května od 18:00 v restauraci Přístav u Vodů u Brněnské přehrady aneb v hantecu u Prýglu.

Ladislav Hagara | Komentářů: 2
16.5. 07:00 | Nová verze

Byla vydána nová major verze 9.0 svobodného systému pro řízení přístupu k síti (NAC) PacketFence (Wikipedie). Přehled novinek v oznámení o vydání. Pro uživatele předchozích verzí jsou k dispozici poznámky k aktualizaci.

Ladislav Hagara | Komentářů: 2
GPU kterého výrobce aktuálně preferujete pro provoz Linuxu?
 (48%)
 (25%)
 (25%)
 (2%)
Celkem 306 hlasů
 Komentářů: 27, poslední dnes 15:36
Rozcestník

Unixové nástroje – 3 (mv, cp, rm)

18. 11. 2009 | David Watzke | Návody | 19889×

mv, cp, rm – přesun, kopírování, mazání. Přestože vypadají jednoduše, skýtají tyto základní příkazy mnoho možností. Podívejte se na příklady použití a vysvětlení významu přepínačů.

Obsah

mv

link

mv slouží k přesouvání (a přejmenování) souborů a adresářů. Název vychází z angl. slova move, což znamená přesunout.

V různých situacích má různé chování, tak si to předvedeme a vysvětlíme na praktických ukázkách.

Následuje příklad, ve kterém přejmenujeme soubor.txt na jiny_nazev.txt. Pokud soubor s názvem jiny_nazev.txt před spuštěním již existuje, bude přepsán (v případě, že na to máme právo, samozřejmě). Pokud před spuštěním existuje adresář s názvem jiny_nazev.txt, tak soubor.txt bude přesunut do něj.

mv soubor.txt jiny_nazev.txt

Co když chceme soubor skutečně přesunout jinam?

# přesuneme soubor.txt do adresáře /mnt/data
mv soubor.txt /mnt/data/

# přesuneme soubor.txt do adresáře /mnt/data pod názvem file.txt
mv soubor.txt /mnt/data/file.txt

Soubor či adresář lze přesunout a přejmenovat najednou, jen dokud pracujeme pouze s jedním, ovšem přesouvat lze i více souborů a adresářů najednou. Jako první vyjmenujeme všechno, co chceme přesunout, a poslední argument musí být cesta k existujícímu adresáři, do kterého se vše přesune.

mv adresar soubor.txt skript.py jiny_adresar ../cilovy_adresar/

Dalším zvláštním případem je přesouvání adresářů. Následující příklad se chová různě za různých podmínek:

  • Existuje-li o adresář výše (..) adresář s názvem jiny_adresar, potom se adresar přesune do něj.
  • Pokud ovšem neexistuje, adresar se přesune o adresář výše pod názvem jiny_adresar.
mv adresar ../jiny_adresar

Chceme-li soubor skutečně přesunout do jiného adresáře a zajistit, aby nedošlo k přejmenování souboru či k přepisu jiného souboru, pomůže za název cílového adresáře přidat lomítko.

mv soubor.txt ~/.trash/

# problém je, že následující příkaz by mohl soubor.txt přesunout do ~
# pod názvem .trash, pokud by adresář .trash neexistoval

mv soubor.txt ~/.trash

Tolik k základnímu použití. Nyní si vysvětlíme, co znamenají argumenty příkazu mv, které jsou dostupné ve většině implementací, včetně GNU. U nestandardních přepínačů přidám hvězdičku (*).

PřepínačPopis
-f povolí přepisování souborů (obejde předchozí -n-i)
-i interaktivní režim; na přepsání souboru se zeptá (obejde předchozí -f-n)
-n *zakáže přepisování souborů (obejde předchozí -f-i)
-v *vypíše informace o tom, jaké operace byly provedeny

Přepínač -f obvykle není nutné používat, protože jde o výchozí režim přepisování souborů, ale hodí se například nastavuje-li vaše distribuce mv jako alias mv -i (tzn. nastavuje -i jako výchozí) a vy to chcete jednorázově obejít.

Ukážeme si, jak v praxi vypadá použití přepínače -v. Uvažujme, že v aktuálním pracovním adresáři máme adresáře ab.

# přejmenujeme a na c
mv -v a c
`a' -> `c'

# přesuneme b do c
mv -v b c
`b' -> `c/b'

Mezi další nestandardní přepínače, které jsou dostupné v implementaci GNU, patří -b-u. Tam, kde by normálně došlo k přepsání souboru, mv s přepínačem -b nejdřív zálohuje původní soubor (přejmenuje ho tak, že na konec názvu souboru přidá ~) a teprve poté jej nahradí. Přepínač -u zajistí, že se existující soubor přepíše jen tehdy, je-li zdrojový soubor novější než cílový (porovnává se mtime, tedy čas poslední úpravy souboru).

Na závěr je dobré si uvědomit, že přesunutí souboru nikdy není úplně totéž jako prosté zkopírování a smazání. Pokud jde o přesunutí v rámci jednoho souborového systému, kopírování a mazání většího souboru by trvalo dlouho, zatímco mv nejprve vytvoří soubory se stejnou inode (hardlinky) v cílovém adresáři a potom smaže ty původní, takže jde o velmi rychlou operaci. V každém případě (tzn. i když kopírujete na jiný souborový systém) má mv výhodu v tom, že máte jistotu, že nepřijdete o data, pokud kopírování dat selže (například při zaplnění souborového systému), protože mv v takovém případě původní soubory nesmaže.


cp

link

Program cp slouží ke kopírování souborů a adresářů. Název cp vychází z anglického copy, což znamená kopírovat. Chování v různých specifických situacích je velmi podobné tomu u mv. To ale není jediná podobnost s mv; cp má totiž i několik stejných přepínačů – standardní -f-i, a GNU verze také -b, -n, -u-v.

Mezi další standardní a GNU (*) přepínače patří:

PřepínačPopis
-H Následuje symlinky v explicitně zadaných zdrojových souborech.
-L Následuje všechny symlinky.
-P Režim kopírování symbolických odkazů. Ve výchozím režimu (GNU) se totiž kopírují soubory, na které symlinky odkazují.
-p Zachová časy (posl. změny a přístupu) a oprávnění.
-R Rekurzivní kopírování. Umožní kopírování adresářů.
-a *Jako -PRp a navíc zachová všechny atributy. Často se používá při běžném rekurzivním kopírování adresářů.
-l *Místo kopírování souborů vytváří pevné odkazy (hardlinky).
-s *Místo kopírování souborů vytváří symbolické odkazy (symlinky).
-x *Při rekurzivním kopírování zůstane pouze na souborovém systému zadaného adresáře.

Ukázky:

# zkopíruje soubor.txt do adresáře /mnt/storage pod názvem jiny_nazev.txt
cp soubor.txt /mnt/storage/jiny_nazev.txt
# zkopíruje soubor.txt do adresáře /mnt/storage
cp soubor.txt /mnt/storage/

# rekurzivně zkopíruje adresář a zachová atributy
cp -a ../adresar /cilovy/adresar/

# vytvoření symlinku (b -> a) pomocí GNU cp
cp -s a b

Adresáře /mnt či /media obvykle obsahují pouze adresáře sloužící jako přípojné body pro souborové systémy. Využijeme toho pro vysvětlení přepínače -x (význam viz výše v tabulce). Následující příkaz sice bude /media kopírovat rekurzivně, ale nezajde při tom mimo souborový systém, na kterém se tento adresář nachází. Pokud tento adresář obsahuje jen prázdné adresáře a případně adresáře, do kterých jsou připojené souborové systémy, následující příkaz zkopíruje pouze adresáře, které jsou přímo v /media (ne v podadresářích).

cp -Rx /media mnt

Máme adresář dir obsahující soubor file a symlink sym ukazující na file. Zkopírujeme-li tento adresář s přepínačem -L, symlink sym bude v kopii adresáře normální soubor, identický jako file, protože -L způsobilo následování symlinku při kopírování.

$ ls -l dir
total 0
-rw-r--r-- 1 dave home 5 2009-11-05 14:07 file
lrwxrwxrwx 1 dave home 4 2009-11-05 14:11 sym -> file
$ cp -aL dir kopie_dir
$ ls -l kopie_dir/
total 8
-rw-r--r-- 2 dave home 5 2009-11-05 14:07 file
-rw-r--r-- 2 dave home 5 2009-11-05 14:07 sym

rm

link

rm slouží k mazání souborů a adresářů. Název vychází z anglického slova remove, což znamená odstranit. Jedná se o nástroj, se kterým je z principu radno pracovat opatrně. O tom si povíme za chvíli. Nejdříve si ukážeme použití:

# smaže soubor.txt
rm soubor.txt
# smaže soubory a, b, c
rm a b c

Nyní si popíšeme standardní přepínače.

PřepínačPopis
-f Neptá se na potvrzení a nevypisuje chybová hlášení (např. při pokusu o mazání neexistujícího souboru). Obejde předchozí -i.
-i Interaktivní režim. Před smazáním každého souboru či prázdného adresáře se zeptá. Obejde předchozí -f.
-r, -RRekurzivní mazání. Umožní mazat adresáře včetně veškerého obsahu.

Předvedeme si rekurzivní mazání adresáře. Všimněte si, že s -i se rm nejprve zeptá, jestli má mazat v zadaném adresáři a poté se ptá na mazání jednotlivých položek (souboru, odkazu a nakonec samotného adresáře). Zkratkou y (angl. yes, tedy ano) mu jednotlivé operace povolíme.

# smaže adresář "dir"
rm -r dir

# smaže soubor.txt (a pokud už před spuštěním neexistuje, nehlásí chybu)
rm -f soubor.txt

# rm se nejprve zeptá, jestli má mazat v zadaném adresáři, a poté
# se ptá na mazání jednotlivých položek (souboru, odkazu a nakonec
# samotného adresáře).
# Máte-li nainstalovanou lokalizaci, bude na vás mluvit česky.
$ rm -ri dir
rm: descend into directory `dir/'? y
rm: remove regular file `dir/file'? y
rm: remove symbolic link `dir/sym'? y
rm: remove directory `dir'? y

Výjimka, kdy je rm (bez -f) interaktivní, i když nezadáme -i, nastane tehdy, když se pokusíme smazat soubor, ke kterému nemáme právo k zápisu (w). Potom se rm zeptá, zda chceme soubor skutečně smazat. Jsme-li vlastníkem souboru či root, smazání souboru nám při kladné odpovědi zpravidla projde. V případě, že nejsme vlastníkem souboru, rm se zeptá taky, ale kladná odpověď pouze způsobí chybové hlášení o nedostatečných právech.

rm soubor_s_pravy_0444
rm: remove write-protected regular empty file `soubor_s_pravy_0444'? y

Upozorňoval jsem na nebezpečnost příkazu rm. Proč? Velmi snadno si pomocí něj můžete zlikvidovat systém. Dříve stačilo (a na některých systémech stále stačí) spustit rm -rf / a smazali jste si celý kořenový adresář – celý systém. V dnešní době to na GNU systémech neprojde (za příkaz je třeba přidat ještě hvězdičku nebo zvláštní přepínač). Věřím tomu, že jsem jeden z mála adminů, kteří si troufnou spustit následující (a rozhodně to tímto nedoporučuji):

# rm -fr /
rm: cannot remove root directory `/'

Kvůli relativně vysoké možnosti nechtěného spuštění tohoto příkazu to nefunguje na většině moderních Un*x systémech. Sun v roce 2005 vydal Solaris 10 s upraveným rm, které při spuštění tohoto příkazu pouze vypsalo chybové hlášení. Krátce na to se toho chytlo i FreeBSD a přidalo tuto úpravu i do své verze programu. GNU verze odmítá spustit příkaz, pokud byl zadán přepínač --preserve-root, který je výchozí od coreutils verze 6.4 z roku 2006. Na GNU systémech to lze obejít přepínačem --no-preserve-root.

Obzvláště dříve, když unixové systémy nebyly tak rozšířené jako dnes, se občas stalo, že se našel nějaký vtipálek, který spuštění tohoto příkazu doporučil nějakému začátečníkovi.

GNU rm disponuje navíc několika nestandardními přepínači. Má --one-file-system, který funguje jako -xcp, což znamená, že rekurze mazání nezajde mimo souborový systém zadaných adresářů. Přepínač -v je stejný jako u mvcp; vypíše informace o provedených operacích.

       

Hodnocení: 100 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

18.11.2009 08:36 oron | skóre: 27
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
tak som si na skusobne spravenom virtuali centOS5 skusil dat rm -rf /

vysledok(prepisal som to):
#cd /
#ls
-bash: ls: commnad not found
#reboot 
-bash: reboot: commnad not found
18.11.2009 11:42 oryctolagus | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
:-D dobře ty...
18.11.2009 13:28 Joelp | skóre: 1
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Mandriva:
# cd /
# rm -rf /
rm: kořenový adresář "/" nelze smazat
# ls
bin/   etc/   initrd/  lib64/   media/       proc/   sbin/  tmp/   var/
boot/  dev/   home/    lib/     lost+found/  mnt/    opt/   root/  sys/   usr/
Boys don't cry
18.11.2009 10:39 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Jsme-li vlastníkem souboru či root, smazání souboru nám při kladné odpovědi zpravidla projde.

Pro oprávnění smazat soubor není vůbec podstatné, zda jsem jeho vlastníkem, ale zda mám právo zápisu na adresář, ve kterém ten soubor je. Vlastnictví na to má vliv pouze v případě, že má ten adresář nastavený 't' bit.

18.11.2009 11:41 oryctolagus | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Taky má vliv immutable bit na souboru...
18.11.2009 13:12 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
…a spousta dalších věcí, počínaje ACL a konče třeba SELinuxem. Ale podstatné je, že základem jsou práva adresáře, ne vlastnictví souboru.
xkucf03 avatar 18.11.2009 15:51 xkucf03 | skóre: 47 | blog: xkucf03
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
njn, proto taky někteří trvají na „adresářích“ místo aby říkali „složka“ :-)
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, Relational pipes (AWK)
18.11.2009 17:22 oryctolagus | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
jestli to nebude spíš tím, že "složka" je pěkně uhozenej název :-D
18.11.2009 17:38 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Uhozený - a v unixových systémech navíc zavádějící - sice je, ale vrchnost rozhodla, že se bude složkovat, tak se bude složkovat. Stejně jako když se místo klikání začalo klepat a menu říkat nabídka…
18.11.2009 22:37 Kvakor
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Ano, navíc je to microsoftismus, ale za určitých okolností se tento termín hodí - může se díky němu rozlišovat mezi adresářem jako entitou na úrovni souborového systému a složkou jako entitou na desktopu, popř. v filemanageru okeního přostředí.

Je totiž běžné, že rozličná deskotpová prostředí (jako Wwindows, Gnome, KDE ...) dělají virtuální složky, které na úrovni systému vůbec neexistují (např. Oblíbené/Favorites, GVFS/GIO, KIO slaves ...) a naopak defaultně ignorují adresáře, které zcela jistě v souborovém systému existují (ve Windows ty skrtyté/systémové, v unixech ty s tečkou na začátku).

Osobne se mi to ale moc nelíbí, protože to jde proti unixové filosofii vše-je-soubor a navíc to mate schopnější uživatele, kteří použijí jiný-než-defaultní filemanager (třeba nějaky dvoupanelový) a najednou zjistí, že se v souborovém systému vůbec nevyznají ...
xkucf03 avatar 19.11.2009 10:40 xkucf03 | skóre: 47 | blog: xkucf03
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Myslím, že by je víc mátlo, kdyby v Dolphinu, Nautilu atd. viděli milion adresářů začínajících tečkou* a mezi nimi by se ztrácelo těch pár, které jsou pro ně důležité.

Oblíbené by šlo řešit přes symbolické odkazy (možná to tak i někde je), ale IMHO je to celkem jedno, stejně uživatel ty oblíbené vidí např. v dialogovém okně a i kdyby to byly soubory (symbolické odkazy), tak neví, kde na disku jsou.
GVFS/GIO, KIO slaves
To sice vypadá jako něco proti posvátné unixové filosofii, ale nutí tě někdo je používat? Brání ti to, připojit si SFTP, CIFS, FTP… pomocí FUSE a mít je v normální hierarchii /mnt/adresářů/ jako normální soubory? Je to jen další možnost. A dost užitečná, když chce člověk třeba jen zkopírovat jeden soubor, protože napsat ftp://example.com/ jako cestu je jednodušší, než si připojovat souborový systém.

*) nemluvě o tom, že i v UNIXu bys se hodil atribut skrytosti, jako ve Windows a nespoléhat se na tečku (protože pak chceš změnit vlastnost skrytý/viditelný a musíš kvůli tomu měnit název, což je často nemožné).
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, Relational pipes (AWK)
otasomil avatar 18.11.2009 18:37 otasomil | skóre: 37 | blog: puppylinux
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)

Slozka .... Folder .... a nasi bratri pouzivaju Priecnik a to sa mi paci najvjac ....

K čemu hudba, která nevede k extázi... Stop MDMA !!! Už je to víc jak 50 let: http://buxlrerulbak7g3e.onion/
Viliam Púčik avatar 19.11.2009 00:08 Viliam Púčik | skóre: 22 | blog: minimal
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Na Slovensku pouzivame priecinok (nie priecnik) :-). Bezne sa vsak pouziva vyraz adresar.
18.11.2009 18:40 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
V SE jde nastavit právo smazat na soubor, ale samozřejmě se při tom kontrolují i klasická unix práva na adresář ;)
In Ada the typical infinite loop would normally be terminated by detonation.
18.11.2009 18:42 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
V článku chybí dost podstatná "opatrnost" a to používání dvou pomlček

rm -rf -- "$soubory"

kdežto se už docela dost lidí spálilo bez nich.
In Ada the typical infinite loop would normally be terminated by detonation.
David Watzke avatar 18.11.2009 18:43 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Jo, tak to je důležitá věc. Na to jsem si nevzpomněl.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Nicky726 avatar 18.11.2009 20:43 Nicky726 | skóre: 56 | blog: Nicky726
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Copak to dělá hezkého?
Enjoy the detours. There you’ll find the things more important than what you want. (Hunter x Hunter)
David Watzke avatar 18.11.2009 21:26 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
-- řekne getoptu (tj. knihovna/program, který zpracovává předané přepínače) něco jako "konec argumentů, dále už jsou jen soubory/adresáře". Tím pádem když proměnná $soubory bude obsahovat "-rf /*" a nebude v uvozovkách, tak nedojde k průseru (např. při použití v nějakym skriptu či tak).
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
18.11.2009 22:41 Kvakor
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Přesněji řečeno, getoptu to řekne "Toho za dvěma pomlčkami si už nevšímej a předej to programu tak, jak to tam je".
Saljack avatar 20.11.2009 01:53 Saljack | skóre: 28 | blog: Saljack | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
A to je jenom u rm nebo i u dalších standartních nástrojů?
Sex, Drugs & Rock´n Roll.
David Watzke avatar 20.11.2009 02:42 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Nejen u rm, je to běžná věc.
standartních
standardních
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
20.11.2009 18:26 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Přinejmenším všech, které k parsování parametrů používají getopt() z glibc.
18.11.2009 20:45 Eugenee
Rozbalit Rozbalit vše cp question
Zdar,

exituje omezeni ve velikosti souboru, aby to cp zvladlo?

(Odmita mi totiz kopirovat soubory nad ~10 GB s hlaskou, ze je malo pameti...)
Saljack avatar 20.11.2009 01:55 Saljack | skóre: 28 | blog: Saljack | Praha
Rozbalit Rozbalit vše Re: cp question
To by mělo být limitující pouze file systémem jinak si myslím, že ne.
Sex, Drugs & Rock´n Roll.
26.11.2009 10:25 Mikimana | blog: mikimana | Jílové
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Celkem mi chybí přepínač, který by s choval jako: smaž to ostatní kromě označeného
David Watzke avatar 29.11.2009 11:23 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
To by bylo třeba udělat skript a využít v něm
find ! -name ... [-or ! -name ...] -delete
Případně místo -delete tam dát -print0 a použít přes rouru xargs -0 rm
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
29.11.2009 12:11 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Spíš -and :-)
David Watzke avatar 29.11.2009 22:17 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
Jojo, pravda... :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
26.4.2013 15:05 Jakub Kaláb
Rozbalit Rozbalit vše Re: Unixové nástroje – 3 (mv, cp, rm)
chyba v odkazu na dalsi dil - odkazuje opet na dil 3

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.