Por que 'não é possível substituir o arquivo existente'?

Por que 'não é possível substituir o arquivo existente'?

Tento escrever em um arquivo date > file, mas o Linux diz

'não é possível substituir o arquivo existente'.

Eu tentei chmod 755, mas ainda não consigo gravar no arquivo. O que devo fazer?

Responder1

Se você estiver executando o bash, a noclobberopção foi definida. Use >|se desejar substituir isso temporariamente.

Responder2

Desligue o noclobber na sessão atual do shell:

set +o noclobber

Ative o noclobber na sessão shelll atual:

set -o noclobber

Veja todas as configurações do bash:

set -o

Referências:
https://www.victordodon.com/to-clobber-or-to-noclobber/ https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html

Responder3

É possível que o arquivo tenha sido definido como imutável com a extensão chattr. Raramente é usado, mas é uma possibilidade realista. Nesse caso:

chattr -i [filename]

... deve ser capaz de remover esse atributo.

Responder4

  1. Vá para sua pasta pessoal
  2. Pressione Ctrl+ Hpara mostrar arquivos ocultos
  3. Verifique se alguma das pastas está bloqueada
  4. Clique com o botão direito na pasta e clique em "propriedades". Nesse clique em "permissões".
  5. Em proprietário, altere o acesso à pasta para “criar e excluir arquivos”.
  6. Clique em "Aplicar permissões a arquivos incluídos"

Se você não conseguir ver nenhuma pasta bloqueada, selecione todas as pastas e faça o procedimento acima

informação relacionada