
Eu tenho um único arquivo inicial criado usando um C
programa no OpenSUSE Leap
VirtualBox VM sendo acessado via ssh
from OS X
. O arquivo é criado com mkstemp()
um link físico para uso link()
. Quando uso cat
esses dois arquivos, um deles tem uma nova linha extra no início. Por que é isso?
osboxes@linux-9utt:~/dir/> cat temporary
test
test
osboxes@linux-9utt:~/dir/> cat hard_link
test
test
osboxes@linux-9utt:~/dir/> cat -e temporary
test^M$
test^M$
osboxes@linux-9utt:~/dir/> cat -e hard_link
test^M$
test^M$
osboxes@linux-9utt:~/dir/> xxd temporary
0000000: 7465 7374 0d0a 7465 7374 0d0a test..test..
osboxes@linux-9utt:~/dir/> xxd hard_link
0000000: 7465 7374 0d0a 7465 7374 0d0a test..test..
Observe que o binário é idêntico para ambos os arquivos.
Saída solicitada para ls -li
:
osboxes@linux-9utt:~/dir/> ls -li ~/dir/
4325625 -rw------- 2 osboxes users 12 Nov 30 14:31 temporary
4325625 -rw------- 2 osboxes users 12 Nov 30 14:31 hard_link
Ao executar de dentro da própria VM, não há discrepâncias.
osboxes@linux-9utt:~/dir/> cat temporary
test
test
osboxes@linux-9utt:~/dir/> cat hard_link
test
test
Responder1
Parece ser um problema do iTerm 2. Eu tinha vários painéis divididos abertos e, depois de fechar um dos painéis, o problema não era mais reproduzível na mesma janela/sessão.