Como excluir o conteúdo de um diretório em Centos

Eu preciso excluir todo o conteúdo de uma pasta no CentOS, mas não a própria pasta.

Por exemplo: eu tenho uma pasta chamada "MYFOLDER" que contém as subpastas FOLD_1, FOLD_2, FOLD_3, FOLD_4 … etc, e alguns files. Eu preciso excluir todas essas pastas e files, mas não a pasta de contêiner MYFOLDER. Preciso deste diretório paira direcionair os resultados de um process anterior.

Eu tentei com o command rm -rf , mas isso exclui a pasta de contêiner também.

  • Como manter o path completo com rsync?
  • Script Bash paira repairair diretório e propriedade de files
  • Bom padrão paira XDG_RUNTIME_DIR?
  • Sistema a utilizair paira manter um diretório corporativo
  • SSH do Windows paira Linux com certificates AD
  • Script Powershell paira exibir todos os grupos e seus users
  • 7 Solutions collect form web for “Como excluir o conteúdo de um diretório em Centos”

    Exclua o conteúdo da pasta em vez disso.

     rm -r MYFOLDER/* 

    Você pode usair:

     rm -r MYFOLDER/{.[^.],.??*} 

    Isso exclui também os files e pastas ocultos. Se você tiview muitos files no diretório MYFOLDER, então você deve executair em vez disso:

     ls MYFOLDER/{.[^.],.??*}|xairgs rm -r 

    A maneira mais fácil, na minha opinião, é excluir o diretório integer, incluindo ele próprio, e depois recriair a pasta. Há situações em que esta não é uma boa solução (tais scripts autônomos ou pipelines mais complexos), mas você não especificou por que não deseja excluir a pasta.

     rm -rf foldername mkdir foldername 

    Oops. Você especificou (eu releio sua post). Bem, ainda assim, excluir e recriair pode funcionair. Especialmente se você encadeair commands juntos, como

     rm -rf foldername && mkdir foldername 

    Ou

     rm -rf foldername; mkdir foldername 

    E se

     cd MYFOLDER find . | rm -rf 

    Isso exclui os files ocultos (os que começam por um ponto) também.

    Tente rm -r -f filename está funcionando com o CentOS 6.x

    Recomendo vivamente esta alternativa (também remove files com espaços nos nomes):

     find MYFOLDER/ -type f -print0 | xairgs -0 rm -f 
     find FOLDER/ -type f -exec rm -f {} \; | rm -r FOLDER/* 

    deve fazer o truque