Hoje eu estava tentando editar rapidamente um .hgignorearquivo do shell bash do Cygwin e adicionei uma linha que era um erro. Não tenho certeza se essa era a melhor maneira de fazê-lo, mas rapidamente pensei em usar head -1 .hgignorepara remover a linha incorreta (anteriormente eu só tinha uma linha no arquivo). Com certeza, quando executado, fornece a primeira linha como a única saída.
Mas quando tentei redirecionar a saída e reescrever o arquivo usando head -1 .hgignore > .hgignore, o arquivo estava vazio. Por que isso acontece? Se eu tentar acrescentar head -1 .hgignore >> .hgignore, ele será anexado corretamente, mas esse obviamente não é o resultado desejado. Por que um redirecionamento truncado não funciona nesse caso?
cutalterar um arquivo no local? , Como posso fazer com que o iconv substitua o arquivo de entrada pela saída convertida?