Não acredite em tudo que vê: ZERO WIDTH SPACE


Se você copiar a linha acima e colar em seu terminal, esperará teste.txt como saída, mas na verdade receberá ls: ./*: No such file or directory como saída.

Isto porque entre o ponto e o barra existente no final do comando está inserido um Unicode Character ZERO WIDTH SPACE o qual é invisível!

Felizmente neste caso o *nix não encara o zero with space como espaço e não considera dois paths.

Já passei por situações onde um código correto não era executado como esperado, em função de um caráctere invisível que foi inserido a partir de copy/paste.

Outros carácteres invisíveis:

Código, Nome e HTML Code:

U+2006 Six-Per-Em Space  

U+2008 Punctuation Space  

U+2009 Thin Space   

U+200A Hair Space   

U+200B Zero-Width Space ​

U+200C Zero Width Non-Joiner ‌

U+200D Zero Width Joiner ‍

U+200E Left-To-Right Mark ‎

U+200F Right-To-Left Mark ‏

U+202F Narrow No-Break Space  

Execuções do código

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *