Ler linha de um arquivo

0

Olá, como posso ler cada linha de um arquivo e compará-lo com outro arquivo ... Na verdade, esse arquivo deve ser retirado da linha de comando .... por favor me ajude

if [[-f $@ ]];
    then
    for "$line" in $@;
    do
        if grep "^$line" /etc/passwd > /dev/null;
            then IFS=":";
            read usr pwd uid gid gcos home shell < <(grep "^$user" /etc/passwd);
            IFS=",";
            read name <<< "$gcos";
            printf "UID:%-10s Name:%s\n" "$uid" "$name";
        else
            echo "No User"
        fi
    done
fi
    
por Sandy006 25.02.2015 / 16:36

1 resposta

1

Hello how can i read each line from a file and compare it with other file.

Se você está apenas tentando obter uma comparação entre os dois arquivos, posso sugerir:

Opção # 1 sdiff = > mesclagem lado a lado de diferenças de arquivo

sdiff file1 file2

Exemplo de saída:

abcdev                                                          abcdev
abcdev                                                          abcdev
abcdev                                                          abcdev
abcdev                                                        | abcde33

Opção # 2 diff = > comparar arquivos linha a linha

diff file1 file2

Exemplo de saída:

4c4
< abcdev
---
> abcde33

Opção # 3 vimdiff = > edite duas, três ou quatro versões de um arquivo com o Vim e mostre as diferenças

vimdiff file1 file2

Exemplo de tela (você pode editar os arquivos enquanto ainda visualiza o diff):

Opção#4 grep = > linhas de impressão que correspondem a um padrão

grep -Fxvf file1 file2

Divisão da bandeira:

-F, --fixed-strings
  Interpret PATTERN as a list of fixed strings, separated by newlines, any of which is to be matched.    
-x, --line-regexp
  Select only those matches that exactly match the whole line.
-v, --invert-match
  Invert the sense of matching, to select non-matching lines.
-f FILE, --file=FILE
  Obtain patterns from FILE, one per line.  The empty file contains zero patterns, and therefore matches nothing.

Exemplo de saída:

abcde33
    
por 26.02.2015 / 01:07