files vergleichen und ausgabe umleken AWK oder SED?

happy

Well-Known Member
hallo

2 verschidene files vergleichen (z.b. ls -al > file1), die ausgabe umleiten an ein 3 file aus dem 3 datei das (7/8) erstelldatum und ab den platzhalter 9 (das weren datei/dirNamen) in > file 4 umlenken.
womint realisiert man sowas am besten?
AWK oder SED? und was nimm ich für den vergleich DIFF? ich brauch nur bei vergleich die einseitige ausgabe.
 
hey.

ich versteh deine frage nicht so ganz.
hier, probier mal das hier zu verstehen:

Code:
% ls -al | awk -F" " '{ print "@"$3$4$5; } { print "#"$1; }' - >1.txt ; grep ^@ 1.txt | sed "s/^@//g" >2.txt ; grep ^\# 1.txt | sed "s/^#//g" >3.txt
 
merci für deine anregung dettus,
hat mir schon etwas geholfen..
doch mit dem verglech von files komm ich nicht weiter ,
in man von diff steht zwar
--left-column
Print only the left column of two common lines in side by side
format.
Jedoch funzt nicht, oder vileicht verstehe ich das falsch, ich will nur unterschiede von file links ausgeben.
 
happy schrieb:
merci für deine anregung dettus,
hat mir schon etwas geholfen..
doch mit dem verglech von files komm ich nicht weiter ,
in man von diff steht zwar
--left-column
Print only the left column of two common lines in side by side
format.
Jedoch funzt nicht, oder vileicht verstehe ich das falsch, ich will nur unterschiede von file links ausgeben.
Wenn du ein 'diff -u' machst, gibt dir diff in der ersten Spalte ein ' ' für gleiche Zeilen, ein '-' für zu löschende Zeilen und ein '+' für einzufügende Zeilen aus. Du musst jetzt nur noch nach dem richtigen 'grep'pen, also z.B. grep '^-' für Zeilen, die im linken aber nicht im rechten File sind.
 
Zurück
Oben