Uso la siguiente sintaxis de shell (de mi pregunta anterior, respondida por - fenomenal) para verificar si el archivo es ASCII (texto) u otro
if LC_ALL=C grep -q '[^[:print:][:space:]]' file; then
echo "file contains non-ascii characters"
else
echo "file contains ascii characters only"
fi
el problema es que obtengo "el archivo contiene caracteres que no son ascii" (de la sintaxis del script de shell) incluso si test_file es un archivo ASCII, ¿por qué?
También pruebo el archivo con el comando de archivo y esto es lo que obtengo
file test_file
Non-ISO extended-ASCII English text" its also ASCII file
mi pregunta: ¿cómo cambiar la sintaxis de shell para admitir también "texto en inglés ASCII extendido no ISO"?
así que obtendré la impresión "el archivo contiene solo caracteres ascii" del script de shell
remark the solution must be for Linux and solaris
gracias
shell-script
jennifer
fuente
fuente
Respuestas:
Hola, usaría algo como:
Parece:
fuente
file $1 | cut -d : -f 2 | sed 's/ //'
== "texto ASCII"]]; entonces