o que esses comandos normais e Sed Fazem

1. o que esses comandos normais e Sed Fazem

Kaynan
Sanz0007

(usa Outra)

Enviado em 09/11/2019 - 13:58h

(sed -n $i'p'

cc=(${nomecompleto}) # vai pegar o o primeiro nome completo
quantidade=${#cc[@]} # (quantidade=a quantidade de palavras no nome completo)(= representa recebe)
nome=${cc[0]} #(o primeiro nome vai sempre receber o indice 0, que é o primeiro índice)

esses comandos acima e abaixo tem a legenda eu peguei de algm mas n entendi qual parte faz qual entendeu tipo o @, um cc[0] ajuda ai pfv

usuarios[$indiceB]=$(expr substr ${cc[0]} 1 10) # (o primeiro nome do nome completo vai ser colocado no array)

grep -q -w $nome; then #


sobrenome=$(expr substr ${cc[qtd-1]} 1 10)

ini1=$(expr substr ${cc[1]} 1 1) # (pega a inicial do segundo nome)
ini2=$(expr substr ${cc[2]} 1 1) # (pega a inicial do terceiro nome)


user3=$(expr substr ${cc[0]}$ini1$ini2 1 10) #($user3 recebe o primeiro nome com as iniciais dos seguintes)

ini1=$(expr substr ${cc[0]} 1 1) # (pega a inicial do primeiro nome)
ini2=$(expr substr ${cc[1]} 1 1) # (pega a inicial do ultimo nome)

user=$(expr substr $ini1$ini2${cc[qtd-1]} 1 10)


  


2. Re: o que esses comandos normais e Sed Fazem

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 09/11/2019 - 16:22h


Sanz0007 escreveu:

(sed -n $i'p'

cc=(${nomecompleto}) # vai pegar o o primeiro nome completo
quantidade=${#cc[@]} # (quantidade=a quantidade de palavras no nome completo)(= representa recebe)
nome=${cc[0]} #(o primeiro nome vai sempre receber o indice 0, que é o primeiro índice)

esses comandos acima e abaixo tem a legenda eu peguei de algm mas n entendi qual parte faz qual entendeu tipo o @, um cc[0] ajuda ai pfv

usuarios[$indiceB]=$(expr substr ${cc[0]} 1 10) # (o primeiro nome do nome completo vai ser colocado no array)

grep -q -w $nome; then #


sobrenome=$(expr substr ${cc[qtd-1]} 1 10)

ini1=$(expr substr ${cc[1]} 1 1) # (pega a inicial do segundo nome)
ini2=$(expr substr ${cc[2]} 1 1) # (pega a inicial do terceiro nome)


user3=$(expr substr ${cc[0]}$ini1$ini2 1 10) #($user3 recebe o primeiro nome com as iniciais dos seguintes)

ini1=$(expr substr ${cc[0]} 1 1) # (pega a inicial do primeiro nome)
ini2=$(expr substr ${cc[1]} 1 1) # (pega a inicial do ultimo nome)

user=$(expr substr $ini1$ini2${cc[qtd-1]} 1 10)

Boa tarde Sanz0007.
O comando abaixo está incompleto, mas serve para mostrar determinada linha de um arquivo.
sed -n $i'p'
#Supondo que i=3, mostra a linha 3 de um arquivo
sed -n "${i}p" nomes.txt

cc=(${nomecompleto})
Gera a array cc com o conteúdo da variável nomecompleto

quantidade=${#cc[@]}
Numero de elementos da array cc,
@ significa todos elementos
# significa quantidade

nome=${cc[0]}
Atribui para a var nome o valor da array cc[0]

Exemplo de array:
ARRAY_NUM=(Zero Um Dois Três Quatro Cinco)
echo ${ARRAY_NUM[0]}
Zero
echo ${#ARRAY_NUM[@]} #Mostra quantidade de arrays
6

Sanz0007, se tiver interesse em aprender, me proponho a ajudar!
Dicas para resolver seu exercício:

Faça um laço para pegar linha por linha
Crie uma array com a linha "atual"
Faça essa 1ª parte...

___________________________________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver


3. Re: o que esses comandos normais e Sed Fazem

Kaynan
Sanz0007

(usa Outra)

Enviado em 10/11/2019 - 21:13h

msoliver escreveu:


Sanz0007 escreveu:

(sed -n $i'p'

cc=(${nomecompleto}) # vai pegar o o primeiro nome completo
quantidade=${#cc[@]} # (quantidade=a quantidade de palavras no nome completo)(= representa recebe)
nome=${cc[0]} #(o primeiro nome vai sempre receber o indice 0, que é o primeiro índice)

esses comandos acima e abaixo tem a legenda eu peguei de algm mas n entendi qual parte faz qual entendeu tipo o @, um cc[0] ajuda ai pfv

usuarios[$indiceB]=$(expr substr ${cc[0]} 1 10) # (o primeiro nome do nome completo vai ser colocado no array)

grep -q -w $nome; then #


sobrenome=$(expr substr ${cc[qtd-1]} 1 10)

ini1=$(expr substr ${cc[1]} 1 1) # (pega a inicial do segundo nome)
ini2=$(expr substr ${cc[2]} 1 1) # (pega a inicial do terceiro nome)


user3=$(expr substr ${cc[0]}$ini1$ini2 1 10) #($user3 recebe o primeiro nome com as iniciais dos seguintes)

ini1=$(expr substr ${cc[0]} 1 1) # (pega a inicial do primeiro nome)
ini2=$(expr substr ${cc[1]} 1 1) # (pega a inicial do ultimo nome)

user=$(expr substr $ini1$ini2${cc[qtd-1]} 1 10)

Boa tarde Sanz0007.
O comando abaixo está incompleto, mas serve para mostrar determinada linha de um arquivo.
sed -n $i'p'
#Supondo que i=3, mostra a linha 3 de um arquivo
sed -n "${i}p" nomes.txt

cc=(${nomecompleto})
Gera a array cc com o conteúdo da variável nomecompleto

quantidade=${#cc[@]}
Numero de elementos da array cc,
@ significa todos elementos
# significa quantidade

nome=${cc[0]}
Atribui para a var nome o valor da array cc[0]

Exemplo de array:
ARRAY_NUM=(Zero Um Dois Três Quatro Cinco)
echo ${ARRAY_NUM[0]}
Zero
echo ${#ARRAY_NUM[@]} #Mostra quantidade de arrays
6

Sanz0007, se tiver interesse em aprender, me proponho a ajudar!
Dicas para resolver seu exercício:

Faça um laço para pegar linha por linha
Crie uma array com a linha "atual"
Faça essa 1ª parte...

___________________________________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver




quero pedir sua ajuda ent pfv to tentando aprender a resolver o problema que meu professor passou valendo nota só que ele não explicou nada de sed e awk e tacou para nós pesquisarmos e resolvermos só que esse é o [*****]


4. Re: o que esses comandos normais e Sed Fazem

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 11/11/2019 - 23:47h


Sanz0007 escreveu:

msoliver escreveu:


Sanz0007 escreveu:

(sed -n $i'p'

cc=(${nomecompleto}) # vai pegar o o primeiro nome completo
quantidade=${#cc[@]} # (quantidade=a quantidade de palavras no nome completo)(= representa recebe)
nome=${cc[0]} #(o primeiro nome vai sempre receber o indice 0, que é o primeiro índice)

esses comandos acima e abaixo tem a legenda eu peguei de algm mas n entendi qual parte faz qual entendeu tipo o @, um cc[0] ajuda ai pfv

usuarios[$indiceB]=$(expr substr ${cc[0]} 1 10) # (o primeiro nome do nome completo vai ser colocado no array)

grep -q -w $nome; then #


sobrenome=$(expr substr ${cc[qtd-1]} 1 10)

ini1=$(expr substr ${cc[1]} 1 1) # (pega a inicial do segundo nome)
ini2=$(expr substr ${cc[2]} 1 1) # (pega a inicial do terceiro nome)


user3=$(expr substr ${cc[0]}$ini1$ini2 1 10) #($user3 recebe o primeiro nome com as iniciais dos seguintes)

ini1=$(expr substr ${cc[0]} 1 1) # (pega a inicial do primeiro nome)
ini2=$(expr substr ${cc[1]} 1 1) # (pega a inicial do ultimo nome)

user=$(expr substr $ini1$ini2${cc[qtd-1]} 1 10)

Boa tarde Sanz0007.
O comando abaixo está incompleto, mas serve para mostrar determinada linha de um arquivo.
sed -n $i'p'
#Supondo que i=3, mostra a linha 3 de um arquivo
sed -n "${i}p" nomes.txt

cc=(${nomecompleto})
Gera a array cc com o conteúdo da variável nomecompleto

quantidade=${#cc[@]}
Numero de elementos da array cc,
@ significa todos elementos
# significa quantidade

nome=${cc[0]}
Atribui para a var nome o valor da array cc[0]

Exemplo de array:
ARRAY_NUM=(Zero Um Dois Três Quatro Cinco)
echo ${ARRAY_NUM[0]}
Zero
echo ${#ARRAY_NUM[@]} #Mostra quantidade de arrays
6

Sanz0007, se tiver interesse em aprender, me proponho a ajudar!
Dicas para resolver seu exercício:

Faça um laço para pegar linha por linha
Crie uma array com a linha "atual"
Faça essa 1ª parte...

___________________________________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver


quero pedir sua ajuda ent pfv to tentando aprender a resolver o problema que meu professor passou valendo nota só que ele não explicou nada de sed e awk e tacou para nós pesquisarmos e resolvermos só que esse é o [*****]


Boa noite Sanz0007.
Fez o "Exercício" que lhe passei?
Na boa, você quer aprender ou quer o exercício pronto?
Segue sem o awk, para ter uma ideia da lógica, de uma estudada e voltamos a conversar.
É só um rascunho:
#!/bin/bash

SEDAO () {
#Elimina "não letra" - Transforma para minúscula - Casa 10 caracteres iniciais
echo "$1"|sed -r 's/[^[:alpha:]]+//g;s/(^.*$)/\L&/;s/[a-z]//11g' >> password.txt;
}

#Gera arquivo para testes
awk -F":" '{if($3>=1000 && $3 <=59999) print $0}' /etc/passwd > ~/password.txt

while IFS='\n' read line;do
read -a nome <<< "$line";
#A) Luiz antonio schalata escreve luiz
echo "[A] Verifica Usuário: ${nome[0]}";
if ! grep -Ewi "^${nome[0]}" password.txt;then
SEDAO "${nome[0]}";
#B) luiz existe, pega sobrenome
echo " Verifica Usuário: ${nome[2]}";
elif ! grep -Ewi "^${nome[2]}" password.txt;then
SEDAO "${nome[2]}";
#C) luiz existe, schalata existe, pega LuizES
echo "[C] Verifica Usuário: ${nome[0]}${nome[1]:0:1}${nome[2]:0:1}";
elif ! grep -Ewi "^${nome[0]}${nome[1]:0:1}${nome[2]:0:1}" password.txt;then
SEDAO "${nome[0]}${nome[1]:0:1}${nome[2]:0:1}";
#D) luiz existe, schalata existe, LuizES existe, pega nome sobrenome
echo "[D] Verifica Usuário: ${nome[0]}${nome[2]}";
elif ! grep -Ewi "^${nome[0]}${nome[2]}" password.txt;then
SEDAO "${nome[0]}${nome[2]}";
fi;
done<nomes.txt

[b]Importante:
echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts