Um possível motivo de que o Weirdfile não esteja realmente usando caracteres ASCII no nome. Se esse for o caso, se você digitar o nome do arquivo, ele não funcionará, mas se você usar copiar / colar, ele também poderá funcionar com a conclusão do comando, dependendo de onde o caractere não Ascii está.
Existem duas possibilidades para caracteres não ASCII: * o caractere não-ASCII possui um glifo idêntico a um no alfabeto latino (cirílico 'a', 'o', 'e' são típicos) * o caractere não-ASCII não é visível (+ U200B, espaço de não-zero-largura-largura, por exemplo).
Além da cópia / pasta v.s. redigite a diferença:
- se você usar
ls suspisciousfile | wc -c
, com all-ASCII, a saídawc
será apenas mais um byte do que você pode contar caracteres no nome do arquivo (devido ao avanço de linha final), se houver caracteres não-ASCII ser mais longo. - com
hexdump
:ls suspisciousfile | hexdump -C
tornará qualquer caractere não ASCII muito óbvio.
Exemplo com um filе
especialmente criado (em que o% final% co_de é realmente um caractere cirílico: