source:
BOOK/obfuscate.sh@
4595928
Last change on this file since 4595928 was 67300de, checked in by , 16 years ago | |
---|---|
|
|
File size: 1.3 KB |
Rev | Line | |
---|---|---|
[67300de] | 1 | #!/bin/bash |
2 | ||
3 | # obfuscate.sh | |
4 | # obfuscate email addresses in XML/HTML | |
5 | # Script written (and slight perl modification) by Archaic <archaic AT linuxfromscratch D0T org> | |
6 | # Modified from "sed -i" to old style "sed -e" by Manuel Canales <manuel AT linuxfromscratch D0T org> | |
7 | # to prevent hangs on very long files, like nonckunked books. | |
8 | # Original Perl expression by Anderson Lizardo <lizardo AT linuxfromscratch D0T org> | |
9 | # Released under the GNU General Public License | |
10 | # | |
11 | # This script currently only seeks out mailto: addresses. If those same | |
12 | # addresses also appear in plaintext, we need to obfuscate those as well. | |
13 | # | |
14 | # This script was made for a very specific purpose so I was a bit lazy in | |
15 | # writing the regex's. | |
16 | # | |
17 | # Please send comments, enhancements, etc. to the above address | |
18 | ||
19 | #set -e # Bail on all errors | |
20 | ||
21 | # First, ensure that we are given a file to process | |
22 | # if [ $# -lt 1 ]; then | |
23 | # echo -e "\nYou must provide an input file." | |
24 | # exit 1 | |
25 | # fi | |
26 | ||
27 | # Nothing like a backup plan! | |
28 | #cp "$1" "$1".bak | |
29 | ||
30 | for i in `grep -o '"mailto:.*@.*"' ${1} |sed -e 's|^"mailto:||' -e 's|"$||'`; do | |
31 | link=`echo $i | perl -pe 's/[^\n]/"\\\&#".ord($&)."\;"/ge'` | |
32 | plaintext=`echo $i | sed -e 's|@| AT |' -e 's|\.| D0T |g'` | |
33 | cp ${1}{,.tmp} | |
34 | sed -e "s|mailto:$i|mailto:$link|" \ | |
35 | -e "s|$i|$plaintext|" ${1}.tmp > ${1} | |
36 | rm ${1}.tmp | |
37 | done | |
38 | #rm $FILE.tmp | |
39 | #exit 0 |
Note:
See TracBrowser
for help on using the repository browser.