The little things give you away... A collection of various small helper stuff
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 

16 lignes
592 B

  1. #!/bin/bash
  2. function usage_exit {
  3. echo 'Usage: dedupe FILE1 FILE2' >&2
  4. echo >&2
  5. echo 'Prints all lines from FILE2 that do not appear in FILE1, in the order of FILE2.' >&2
  6. echo 'WARNING: FILE1 has to be read into memory fully. If your files are sorted, use comm instead.' >&2
  7. exit $1
  8. }
  9. if [[ "$1" == '-h' || "$1" == '--help' ]]; then usage_exit 0; fi
  10. if [[ $# -ne 2 ]]; then usage_exit 1; fi
  11. # Perl seems to be ~30 % faster for this.
  12. #awk 'NR==FNR { s[$0]=1; next; } !($0 in s)' "$1" "$2"
  13. perl -ne 'if (@ARGV == 1) { $seen{$_}=1; } else { print $_ if !(exists $seen{$_}); }' "$1" "$2"