GNU/Linux >> Znalost Linux >  >> Linux

Skriptování `rm` A `rm -i`?

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.


Linux
  1. Chcete přesunout `rm` do koše?

  2. Swapfile a swapspace?

  3. Linux Odstraňte soubory a adresáře

  1. Jak archivovat a komprimovat soubory na Linuxu

  2. Procházet složku a vypisovat soubory?

  3. Oblíbené rsync tipy a triky

  1. Kopírování souborů mezi Linuxem a FreeDOSem

  2. Najděte a zkopírujte soubory

  3. tcpdump – rotace zachycených souborů pomocí -G, -W a -C