Advertisement
bueddl

Untitled

Dec 29th, 2015
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.52 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. SEARCHPATH='/var/data'
  4. KEYWORDS="-e langenscheidt"
  5. TMPPATH='/var/data/tmp'
  6.  
  7. ARCHIVES=('zip' 'tar' 'gz' 'bz2' 'xz')
  8.  
  9. MATCHES_NOW=$(find . | grep $KEYWORDS)
  10. MATCHES="$MATCHES\n$MATCHES_NOW"
  11. echo $MATCHES_NOW >> partial-results.txt
  12.  
  13. ARCHIVE_NO=0
  14. for EXT in $ARCHIVES; do
  15.         echo "Checking for archives (*.$EXT)"
  16.         XZ=$(find "$SEARCHPATH" -iname "*.$EXT")
  17.  
  18.         for ARCHIVE in $ZIP; do
  19.                 echo "Checking $ARCHIVE"
  20.  
  21.                 mkdir -pv "$TMPPATH"
  22.                 cd "$TMPPATH"
  23.  
  24.                 case $EXT in
  25.                         zip)
  26.                                 unzip $ARCHIVE
  27.                         ;;
  28.  
  29.                         tar)
  30.                                 tar -xf $ARCHIVE
  31.                         ;;
  32.  
  33.                         gz|bz2)
  34.                                 tar -xf $ARCHIVE
  35.                         ;;
  36.  
  37.                         xz)
  38.                                 cat $ARCHIVE | unxz -1 - | tar -x
  39.                         ;;
  40.                 esac
  41.  
  42.                 MATCHES_NOW=$(find . | grep $KEYWORDS)
  43.                 MATCHES="$MATCHES\n$MATCHES_NOW"
  44.                 echo $MATCHES_NOW >> partial-results.txt
  45.                 if [ ! -z "$MATCHES_NOW" ]; then
  46.                         echo $MATCHES_NOW > "archive-$ARCHIVE_NO.txt"
  47.                 fi
  48.                 echo "$ARCHIVE_NO:$ARCHIVE" > "archives.txt"
  49.  
  50.                 rm -rf "$TMPPATH"
  51.                 ARCHIVE_NO=$(($ARCHIVE_NO+1))
  52.         done
  53. done
  54.  
  55. echo $MATCHES > results.txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement