Removendo um diretório que não possui arquivos nele

2

Eu criei recentemente um nome de usuário e um grupo chamado gamesForAdmin . Desde então, eu deletei e a pasta que eu fiz para ele ainda está lá:

drwxr-xr-x  5 root     root       4096 Jul  4 11:28 .
drwxr-xr-x 23 root     root       4096 May 29 12:41 ..
drwxr-xr-x  2 sftpuser sftpaccess 4096 Jul  4 11:24 gamesForAdmin
drwxr-xr-x 27 ryan     ryan       4096 Jul  4 11:31 ryan
drwxr-xr-x  3 root     sftpaccess 4096 Jul  4 11:29 sftpuser

Quando tento executar um sudo rmdir gamesForAdmin , recebo esta mensagem de erro:

rmdir: failed to remove ‘gamesForAdmin’: Directory not empty

Mas não há nada no diretório! Quando eu executo um ls , não há nada listado.

  • Por que isso ocorre?
  • Como posso remover com sucesso este diretório?

Saída de ls -la gamesForAdmin :

total 28
drwxr-xr-x 2 sftpuser sftpaccess 4096 Jul  4 11:24 .
drwxr-xr-x 5 root     root       4096 Jul  4 11:28 ..
-rw------- 1 sftpuser sftpaccess  471 Jun  9 19:49 .bash_history
-rw-r--r-- 1 sftpuser sftpaccess  220 Apr  8 21:03 .bash_logout
-rw-r--r-- 1 sftpuser sftpaccess 3637 Apr  8 21:03 .bashrc
-rw-r--r-- 1 sftpuser sftpaccess  675 Apr  8 21:03 .profile
-rw------- 1 sftpuser sftpaccess  644 Jun  9 17:48 .viminfo
    
por ryekayo 04.07.2014 / 17:38

3 respostas

3

Com base na saída que você está mostrando em sua pergunta, o diretório gamesForAdmin não está vazio, portanto rmdir não pode remover esse diretório. Para removê-lo, você precisará usar rm -fr . Tente isto:

sudo rm -rf gamesForAdmin

que deve corrigir você.

    
por 04.07.2014 / 17:43
6

Sua pasta pode ter alguns arquivos ocultos ( ls não exibe arquivos de ponto por padrão , ou seja, arquivos cujo nome começa com . estão ocultos).

Executar:

ls -la gamesForAdmin

para verificar se há arquivos ocultos.

Atualizado

De acordo com seu resultado ls -la , seu diretório não está vazio, então rmdir não pode removê-lo, rmdir só funciona com o diretório vazio.

Para removê-lo, você pode usar:

rm -r gamesForAdmin
    
por 04.07.2014 / 17:42
2

ls -al é ótimo para verificar se há diretórios ocultos.

Exceto que rm -rf é removido recursivamente e força a remoção, lembre-se de que rm -rf \ excluirá tudo. Dependendo da distribuição, isso pode gerar um erro ou demonstrar todo o seu sistema de arquivos.

O Ubuntu normalmente não permite que você faça um rm em seu sistema de arquivos raiz.

    
por 04.07.2014 / 17:44