minor style cleanup
[citadel.git] / citadel / migrate_aliases.sh
index 9408135f25425c36ec680ff27181c32caa396925..bc5c31ef3caf89b21e810fdb6638c6bfcf82c2cd 100755 (executable)
@@ -1,22 +1,32 @@
 #!/bin/bash
+if test -z "$1"; then
+    echo "Usage: $0 mail.aliases"
+    exit
+fi
 
 CITALIAS=$1
 if test -f /etc/aliases; then
-    cat /etc/aliases | \
+# don't work with temp fils, so they can't get hijacked.
+# sorry users with megabytes of aliases.
+    NLINES=`cat /etc/aliases | \
        sed -e "s; *;;g" \
             -e "s;\t*;;g" | \
        grep -v ^root: | \
        grep -v ^# | \
        sed -e "s;:root;,room_aide;" \
-            -e "s;:;,;" >/tmp/aliases
-
-    NLINES=`cat /tmp/aliases|wc -l`
+            -e "s;:;,;" |wc -l`
     
     for ((i=1; i <= $NLINES; i++)); do 
-       ALIAS=`head -n $i /tmp/aliases |tail -n 1`
+       ALIAS=`    cat /etc/aliases | \
+       sed -e "s; *;;g" \
+            -e "s;\t*;;g" | \
+       grep -v ^root: | \
+       grep -v ^# | \
+       sed -e "s;:root;,room_aide;" \
+            -e "s;:;,;" |head -n $i |tail -n 1`
        ORG=`echo $ALIAS|sed "s;,.*;;"`
-       if grep $ORG $CITALIAS; then
-           echo "Ignoring Alias $ORG as its alreday there"
+       if grep "$ORG" "$CITALIAS"; then
+           echo "Ignoring Alias $ORG as its already there"
        else
            echo "$ALIAS" >>$CITALIAS
        fi