Para copiar as palavras que começam com c para o novo arquivo
comando
sed -n '/^c/p' inputfile >outputfile
Eu tenho uma tarefa de casa onde eu tenho um arquivo que é uma grande lista de palavras.
Eu tenho que copiar em um novo arquivo todas as palavras que começam com c
e nomeá-lo cwords
.
Eu posso ver uma lista das palavras fazendo cat words | grep ^c
e posso copiar a lista inteira para um arquivo fazendo cp words cwords
, mas o que eu digito para obter apenas as palavras que começam com c
copiadas?
Para copiar as palavras que começam com c para o novo arquivo
comando
sed -n '/^c/p' inputfile >outputfile
aqui está o redirecionamento >
ou 1>
do stdout para um arquivo que você está procurando
-i
opção definida no grep significa ignorar maiúsculas e minúsculas
você não precisa de cat file | grep ...
use apenas grep
há poucos tipos diferentes de redirecionamento para aprender a usar.
grep yourpattern inputfile > outputfile
-bash-4.4$ cat > cword\? # to have a random file list as input
fdsf
fdsfsd
cdsfdsf
csrezr
rezr
ret
-bash-4.4$ grep -i "^c" cword\? > cwords
-bash-4.4$ cat cwords
cdsfdsf
csrezr
-bash-4.4$ rm cword*
-bash-4.4$
grep -E '\bc' inputfile > outputfile
Eu deveria elaborar -E, --extended-regexp \ b é palavra boundries c é o personagem que você quer combinar então você está pesquisando através de inputfile para todas as palavras que começam com c você então usa > para colocar a saída no arquivo de saída. No seu caso, você seria o nome de cwords.