Exclui todos os arquivos que não iniciam com uma determinada string em uma pasta

0

Como posso excluir todos os arquivos que não começam com "2012" em uma pasta específica?

Isso está no OS X Lion.

    
por user27449 02.05.2012 / 12:17

1 resposta

4

Use find para selecionar todos os arquivos ( type f ) que não ( ! ) começam com 2012 ( "2012*" ). Você então rm (remove) eles imediatamente, ou deixe a opção delete fazer isso por você.

find . -type f ! -name "2012*"

Observe que isso recursivamente desce em subdiretórios. Se você quiser ter certeza de que não remove as coisas que realmente deseja manter, use as opções certas (confira man find para saber mais).

Por exemplo, -maxdepth 1 não entrará em subdiretórios.

Agora, remova esses arquivos:

find . -type f ! -name "2012*" -delete
    
por 02.05.2012 / 12:22

Tags