Postagens

Mostrando postagens de janeiro, 2021

Find emite verdadeiro mesmo não achando o arquivo como resolver

 O find só apresenta o valor falso quando tem erro na formulação do comando: find asd echo $? 1  find . -name arqnaoexiste.txt echo $? 0 Podemos resolver isso assim: Como todo mundo sabe o grep apresenta um valor falso caso não localize a string echo banana | grep joka  echo $? 1  arq=arqnaoexiste.txt find . -name $arq | grep -q $arq echo $? 1 O -q diz ao grep para não imprimir na tela nenhum resultado.   Pode fazer de outra maneira usando o parâmetro -exec e condição para saber se find achou o arquivo ou não. find . -name 1file.txt -exec file {} \; O find vai procurar o arquivo 1file.txt e se achar vai executar o comando file. {}=Nome do arquivo achado pelo find. \;  Está escapado para o shell não interpretar. Para o parâmetro -exec ; tem significado que já foi definido o comando que quer ou seja para terminar o -exec.  find_file=$(find . -name $1  -exec file {} \;) [ -z "$find_file" ] && echo File not found  || echo File found $find_file  -z é para saber se o valor

Script precisa do sudo para dar a permissão ao um comando fazer algo ....

 O sudo não consegue intrepretar a senha como um argumento que você pode escrever do lado com isso não pode colocar em script dessa forma: sudo mkdir  /paçoca 123 [sudo] senha para usuário Mas tem operador -S que diz ao sudo para interpretar a entrada do teclado como senha. sudo -S mkdir /paçoca <<< 123 sudo -S (Argumento=comando)  (Entrada do teclado=senha para sudo) <<<=É a representação do stdin(entrada do teclado).  Criou lá na / o diretório paçoca

Script com zenity para converter ISO-8859 text para UTF8

   https://drive.google.com/file/d/19bWNhSgyiu1QTkuFNbkkar4BlxAsKkKe/view O   comando principal é esse:  iconv -f ISO-8859-1 -t UTF-8 in.txt > out.txt   O programa iconv converte a seqüência de caracteres no arquivo de entrada de um conjunto de caracteres codificados para outro.  -f É para especificar a codificação do arquivo de entrada (Arquivo que tem que ser convertido) -t é para especificar a codificação do arquivo de saída (Arquivo que tem o resultado da conversão do iconv) O comando file serve para ver a codificação do arquivo. Se der file + legenda convertida aparecerá UTF8. UTF-8 é um tipo de codificação binária de comprimento variável. Pode representar qualquer caracter universal padrão do Unicode, sendo também compatível com o ASCII.   UTF8=Unicode Unicode é um padrão adotado mundialmente que possibilita com que todos os caracteres de todas as linguagens escritas utilizadas no planeta possam ser representados em computadores. Vários conversores quando insere a leg

Elif uma verificação dentro de um if. Explicado de forma simples.

  elif pode ser usado para organização para não deixar vários ifs separados. if [ $1 == 2 ] then echo Primeiro argumento é 2 elif [ $1 == 3 ] then echo O primeiro argumento é 3 fi Modo desorganizado: if [ condicão ] then ……… fi if [ condição ] then ……… fi Mas serve também para caso a verificação anterior emita falso/não funcione é executado o elif para fazer outra verificação. touch joka.txt touch juka.txt if [ -e joka.txt ] then echo O arquivo joka.txt existe elif [ -e juka.txt ] #Caso o if anterior emita falso o elif entra em ação. then echo O arquivo juka.txt existe fi -e É um parâmetro de verificação para verificar existência de um arquivo.