L koule a potrubí Unixu jsou v mnoha případech velmi výhodné, když pracujeme z konzoly. Všichni jste použili dýmky nebo jste použili slavné postavy jako zástupný znak * k nahrazení jmen atd. Určitě se také setkali s problémem chtít odstranit všechny soubory v adresáři, kromě jednoho nebo více z nich. Pokud je jich málo, není to problém, lze to snadno udělat i z grafického režimu.
Ale pokud jich je mnoho a my jsme práce z konzoly věci se trochu komplikují. Ale to jen proto, že nemáme zdroje, protože existují jednoduché možnosti, které můžeme využít, abychom nám pomohli transformovat komplikované úkoly na něco velmi jednoduchého. V tomto jednoduchém tutoriálu vysvětlíme, jak to udělat pomocí jednoduchého symbolu ... Snadné, že? Pojďme si procvičit:
Nejprve si představím, že máme adresář s názvem Fotky, ze kterých chceme odstranit všechny obrazové soubory .jpeg, které jsou uvnitř. Představme si, že existuje 100 fotografií. A že chceme odstranit všechny kromě jednoho z nich s názvem nat7.jpg. Prvním krokem je přejít do tohoto adresáře pomocí příkazu cd. Například:
cd /home/Fotos
Potom použijeme příkaz rm, jak to často děláme, když chceme vymazat něco, ale naznačíme, že chceme smazat vše kromě té fotografie, kterou si chceme ponechat, k tomu použijeme znak! takové, že:
rm -f !(nat7.jpg)
Tím popíráme odstranění na rm, aby odstranilo vše kromě souboru s názvem nat7.jpg. Pokud přejdete do adresáře a uděláte výpis obsahu budete moci ověřit, že bylo odstraněno vše kromě požadované fotografie:
ls /home/Fotos
Nyní můžete hrát s tímto globem dělat jiné věci, například mazat všechny soubory v adresáři kromě souborů MP3 pomocí! (*. mp3) nebo také ukládat různé soubory nebo formáty z mazání, například! (nat7.jpg | isa5.jpg) nebo pomocí! (* . txt | * .mp3). Možností je mnoho ... Toto je Unix, toto je Linux!
Není den, abychom se něco nenaučili! Navzdory tomu, že se s PC trápím asi 30 let a téměř 20 s Linuxem, konzole se mi příliš nedaří, připouštím, že je to nesmírně užitečné, ale vždy jsem byl líný, když jsem si pamatoval příkazy a oslavte přechod do grafického režimu. Tuto možnost globů jsem vůbec neznal a přestože bez ní nebylo těžké přežít, je třeba připustit, že vypadá mimořádně užitečně a prakticky, navíc snadno pochopitelně a snadno použitelně. Beru to na vědomí.
Děkuji za příspěvek, o kterém nepochybuji, že bude velmi užitečný.
Dobrý den.
Děkuji moc, ale…
rm -f! (*. exe)
bash:!: událost nebyla nalezena
Dobrý den,
Zkuste aktivovat toto:
shopt -s extglob; nastavit -H
A zkuste to znovu:
rm -f! (*. exe)
Vše nejlepší! Doufám, že to pro vás bude fungovat. A děkujeme, že jste nás sledovali ...
Dobrý den, mám otázku, nebyl jsem schopen uložit dva soubory najednou, protože když to zkusím, vše se smaže, ale když to udělám jen s jedním, můžu. co by to mohlo být? Jak to vyřešit?