Chci vytvořit skript, který vždy, když jsou odstraněny více než tři soubory, vyvolá rm -i
ve výchozím stavu. Vím, že to půjde do inicializačních souborů, ale nezdá se mi, že by to fungovalo.
Zatím:
if [$file -ge 3]; then
rm -i
exit 0
else
rm
exit 1
Přijatá odpověď:
Funkce uvedená v odpovědi @Tim bude fungovat na jakémkoli systému běžícím bash. Nicméně GNU rm
již má možnost pro to, co potřebujete (z man rm
):
-I prompt once before removing more than three
files, or when removing recursively. Less
intrusive than -i, while still giving protec‐
tion against most mistakes
Pokud tedy máte GNU rm
(což byste měli, pokud používáte Linux) vše, co potřebujete, je přidat tento řádek do vašeho /.bashrc
:
alias rm='rm -I'
Toto zobrazí výzvu před smazáním více než 3 souborů, ale nebude vyžadovat potvrzení pro každý soubor, pokud akci potvrdíte, všechny soubory budou smazány.
Jak najít/grep, co je mezi String1 a String2?
Linux – Instalace proprietárních ovladačů Nvidia Kali 2016.2?