Vejamos o utilitário iconv do Linux em seu console terminal agora. Então, estamos executando a instrução “iconv” com a bandeira “-l” para exibir todos os conjuntos de caracteres codificados conhecidos e usados em nossa tela de terminal. Ele exibirá os conjuntos de caracteres codificados junto com seus pseudônimos. Você pode ver uma longa lista de conjuntos de caracteres codificados depois de rolar um pouco.
Agora, é hora de começar com a implementação do comando iconv no Linux. Primeiro, precisamos de diferentes tipos de arquivos em nosso sistema para converter um tipo de arquivo em outro tipo. Assim, estamos utilizando a consulta "Touch" no terminal do console para criar três arquivos diferentes, eu.e., Tipo Java, tipo C e tipo de texto. Listando o conteúdo atual do diretório, você encontrará os arquivos recém -gerados.
Depois disso, examinaremos o tipo de arquivo separadamente usando a consulta "Arquivo" junto com o nome de cada arquivo. Esta consulta precisa da opção "-i" para exibir o tipo de caractere de codificação definido para cada arquivo separadamente. Se você esqueceu de usar a opção "-i", use a bandeira "-Mime" em vez disso. As bandeiras “-i” e “-mme” funcionam iguais.
Agora, depois de executar a instrução "arquivo" para o arquivo do tipo "txt", recebemos a codificação do tipo "US-ASCII". Ao usar a mesma instrução para os arquivos Java e C, ele mostra que ambos os arquivos contêm codificação de tipo de caractere "binário". Junto com isso, esta instrução mostra que todos esses três arquivos estão vazios.
Agora, ilustraremos o uso da instrução ICONV no console para converter um arquivo de codificação de conjunto de caracteres específico em outro conjunto de caracteres codificando. Antes disso, devemos adicionar algum código ou dados aos nossos arquivos. Portanto, adicionamos o código Java no “texto.arquivo java ", código c dentro do" texto.arquivo C ”e adicionou dados de texto no“ teste.arquivo txt ”. A consulta de gato foi usada aqui para exibir o conteúdo dos três arquivos, conforme apresentado abaixo:
Agora que adicionamos os dados com sucesso, veremos a codificação do conjunto de caracteres desses arquivos mais uma vez. Então, tentamos a mesma instrução de arquivo dentro do shell com a bandeira "-i" e os nomes dos arquivos, eu.e., teste.txt, teste.java e teste.c. Executar essas três instruções separadamente para todos os três arquivos mostra que a codificação do conjunto de caracteres foi atualizada para os arquivos Java e C enquanto permanece o mesmo para o arquivo de texto, i.e., US-ASCII. A codificação dos arquivos Java e C era anteriormente "binária"; Agora, é "EUA-ASCII". Além disso, mostra que o arquivo de texto contém dados de texto simples, enquanto os outros dois arquivos de código contêm os scripts como o conteúdo.
É hora de executar a tarefa real necessária para este artigo, eu.e., converter um codificando para outro usando o comando iconv no shell. Assim, estamos usando a instrução "iconv" dentro do terminal do shell com os privilégios "sudo". Este comando pega a opção "-f" significa "de", e a opção "-t" significa "To", eu.e., De um codificando para outro.
Após a opção "-f", você deve especificar a codificação do seu arquivo, eu.e., US-ASCII. Enquanto após a opção "-t", você deve especificar a codificação que deseja substituir pela codificação antiga, eu.e., Unicode. Você deve especificar o nome de um arquivo usado como fonte com a opção -o para criar sua imagem de objeto. A imagem do objeto seria outro arquivo, eu.e., "novo.C ”, do mesmo tipo, mas com a nova codificação e os mesmos dados.
Depois de executar a seguinte instrução, você receberá um novo arquivo no mesmo diretório, eu.e., De acordo com a consulta "LS". Agora, verificaremos a codificação do conjunto de caracteres de um novo arquivo gerado usando a instrução ICONV. Utilizaremos novamente a instrução "arquivo" com a opção "-i" e o novo nome do arquivo, eu.e., novo.c.
Você verá que o conjunto de personagens para este novo arquivo foi diferente do conjunto de personagens de um arquivo antigo, eu.e., o conjunto de caracteres UTF-16LE. Isso ocorre porque traduzimos a codificação dos EUA-ASCII para a codificação do Unicode usando a instrução ICONV para o nosso novo.Arquivo C. A consulta "CAT" exibiu o mesmo código C dentro do arquivo, mas começou com alguns caracteres unicode, como já apresentado.
De uma maneira muito semelhante, mudaremos a codificação do teste.Arquivo de texto txt. A instrução de arquivo mostra que possui um conjunto de caracteres EUA-ASCII codificando. O comando iconv foi usado com o mesmo formato para converter a codificação do teste.Arquivo TXT de US-ASCII para Turkish8. Você verá que isso não muda o US-ASCII para turco.
Depois disso, usamos o mesmo comando para cobrir o conjunto de caracteres US-ASCII para UTF-32, codificação para o mesmo arquivo. Desta vez, funciona. Isso ocorre porque às vezes pode haver um problema convertendo um conjunto de codificação para outro, ou a outra codificação pode não apoiar.
Conclusão
Este artigo discutiu como usar as instruções do ICONV Linux para converter um conjunto de caracteres que codifica para outro usando seus aliases. Dessa maneira, tivemos que criar alguns arquivos de diferentes tipos.