#!/bin/bash

# This program will modify a file by substituting all instances of a specified
# IP with "DUMMYIP".  This is useful for making the IP address generic and thus
# searchable.

# Description of argument(s):
# ip_addr    An IP address.
# file_path  The path to a file which is to be modified.

# Get arguments.
ip_addr="${1}" ; shift
file_path="${1}" ; shift

# Validate arguments.
if [ -z "${ip_addr}" ] ; then
  echo "**ERROR** You must provide an IP address as the first positional" \
       "parameter." >&2
  exit 1
fi

if [ -z "${file_path}" ] ; then
  echo "**ERROR** You must provide a file path as the second positional" \
       "parameter." >&2
  exit 1
fi

ip_addr_regex=`echo ${ip_addr} | sed 's/\(\.\)/\\\./g'`
sed -i 's/'${ip_addr_regex}'/DUMMYIP/g'  ${file_path}
