Eu uso isso:
ls -l | less
Algo estranho aconteceu hoje.
Eu estava conectado a um servidor HP com putty e vi dois arquivos com o mesmo nome exato:
-rw-r--r-- 1 hemantj 3368 Apr 1 12:47 test
-rw-r--r-- 1 hemantj 20 Sep 1 12:47 test
Foi muito estranho porque você não pode ter arquivos com o mesmo nome.
Mais tarde, quando eu estava conectado com o FileZilla, vi que havia alguns especiais. caractere no final do segundo nome de arquivo.
Minha pergunta: é possível destacar caracteres especiais no nome do arquivo em um terminal?
Estou conectado ao HP-UX e meu shell é tcsh e ksh.
EDITAR:
Obrigado pela sua resposta, mas acho que .stackexchange.com / questions / 2182 / identification-files-with-spacial-characters-in-its-name-in-terminal / 2188 # 2188 "> solução é a mais simples e portátil.
+1 para todos vocês - aprendi muito com suas respostas
O fato de você estar no HP-UX é realmente o problema. Com as ferramentas GNU disponíveis na maioria das distribuições Linux, existem várias opções.
Existe ls -q
, que exibe caracteres especiais como '?'. Ou -b
, que exibe códigos octal.
Outra opção é ls | cat -v
.
Também find . -type f -ls
, que exibe usando códigos de escape por padrão.
Alguns deles podem funcionar no HP-UX, mas eu não sei.
Se você tiver sorte o suficiente para ter od,
ls -1 | od -xC
ls -1
imprime os nomes dos arquivos, separados por uma nova linha. od -xC
imprime o texto de entrada em hexadecimal, com caracteres ascii reconhecíveis exibidos em cada octeto.
Exemplo de saída para três arquivos, denominados 1, 2, 3:
0000000 310a 320a 330a
1 \n 2 \n 3 \n
0000006
Exemplo de saída para dois arquivos, denominados 1 e '\ n2':
0000000 0a32 0a31 0a00
\n 2 \n 1 \n
0000005
Observe que há três novas linhas para dois arquivos e lexograficamente, "\ n2" classificado antes de "1".
isso não é um real destaque, mas pode ajudar a identificar os caracteres:
# find . -type f -exec sh -c "hexdump -C <<<'{}'" \;
pode ser melhor construído. ensina-me;)
Tags terminal