para imprimir a linha começando com o número desejado

0

Eu tenho algumas consultas relacionadas a alguns arquivos.

Entradas:

A=”1n”
List=”R1  7n  3n”  “R2  8n  1n”  “R3  1n  2n”  “R4  2n  3n”  “R5  3n  4n”

Na saída, quero que a nova lista comece com a string contendo 1n information. Nova lista:

“R2 8n 1n” “R3 1n 2n” “R4 2n 3n” “R5 3n 4n”

Por favor, confirme se posso fazê-lo com a ajuda das operações de comandos do Shell.

    
por yisha 13.11.2014 / 09:49

1 resposta

1

Por favor, explique o que é aspas? É usual " ? Se não - basta substituí-lo em scripts.

Se você puder modificar file1 para "[^"]1n.* , será fácil usar grep

grep -of file1 file2 > file3

Se você não está livre para usar sed

grep -o "$(sed -E 's/(.)(.*)(.)/[^]*.*/' file1)" file2 > file3

ou até read

grep -o "$(read -r r <file;q=${r%${r#?}};printf "$q[^$q]*${r//["]/}.*")" file2 > file3
    
por 13.11.2014 / 11:26

Tags