Fórum Root.cz
Hlavní témata => Software => Téma založeno: Ferda 10. 12. 2010, 12:58:27
-
Ahoj, mám následující problém: podařilo se mi nějak záhadně udělat soubor s názvem -T. Ani nevím, kde se mi na disku vzal, ale to není podstatné. Problém je, že se s ním velmi špatně pracuje, protože ho programy považují za parametr. Nakonec jsem aspoň zjistil, jak ho vypsat:
# less < -T
Ale třeba rm na něj nefunguje, protože to zařve, že nezná parametr -T. Jak vlastně s takovým souborem korektně pracovat? Jak se ho zbavit?
-
rm -- -T
-- sposoby ze getopt prestane parsovat prepinace. takze je to univerzalne pouzitelne. aspon pre vsetko co pouziva getopts.
-
Sakra - nou me o 10 vterin predbehl ...
rm -- -t
;)
-
Presne ako hovori Ferda, ja by som este doplnil (pre ludi majucich podobny problem so subormi - napr "*") variantu s uvodzovkami - je to istejsie.
rm -- "subor"
Teda napr v korenovom adresari ulozeny subor "-rf *"
rm -- "-rf *"
Niekedy mozete mat problem napisat znaky, ktore su v nazve suboru (enter, tabulator), to sa riesi vhodnym napisanim ako v C:
rm -- "`echo -e "subor\ns\tdivnym*nazvom "`"
-
Díky moc za výbornou radu, o dvou pomlčkách jsem neměl tušení.
-
Pokud mate na stroji Midnight Commander, tak ten by to mel normalne umet i smazat i prejmenovat.
-
Jako první mě napadlo dát to do uvozovek, jenže to nefunguje, ale příkaz rm mi sám napověděl:
Try `rm ./-T' to remove the file `-T'.