hannes
7 years ago
committed by
GitHub
1 changed files with 66 additions and 0 deletions
@ -0,0 +1,66 @@ |
|||
#!/bin/bash |
|||
############################################################################################ |
|||
# |
|||
# File name: findAndReplace.sh |
|||
# Author: Hannes Bohnengel |
|||
# Last modified: 04/04/2018 |
|||
# Required pkgs: sed |
|||
# CLI usage: findAndReplace.sh |
|||
# Description: This shell script eases the use of sed |
|||
# to find and replace strings in text files. |
|||
# http://clubmate.fi/replace-strings-in-files-with-the-sed-bash-command/ |
|||
# |
|||
############################################################################################ |
|||
|
|||
############# |
|||
# Variables |
|||
############# |
|||
|
|||
ARGC=3 |
|||
INPUT=$1 |
|||
OUTPUT=${INPUT%.*} |
|||
OUTPUT="${OUTPUT}-replaced.txt" |
|||
NAME=$2 |
|||
NEW_NAME=$3 |
|||
|
|||
############# |
|||
# Processing |
|||
############# |
|||
|
|||
# Check if the expected number of parameters is given. |
|||
# If not exit with error. |
|||
if [ $# != $ARGC ] |
|||
then |
|||
echo "Error: Please provide the correct arguments!" |
|||
echo "Correct usage is:" |
|||
echo "./findAndReplace.sh [inputFile] [nameToBeReplaced] [pseudonym]" |
|||
exit 1; |
|||
fi |
|||
|
|||
# Printing the status |
|||
echo -e "=======================================================================\n" |
|||
echo "Input file: ${INPUT}" |
|||
echo "Output file: ${OUTPUT}" |
|||
echo "" |
|||
|
|||
# Do the replacement (note the double quotes) |
|||
echo "Replacing \"${NAME}\" with \"${NEW_NAME}\"" |
|||
sed "s/${NAME}/${NEW_NAME}/g" $INPUT > $OUTPUT |
|||
|
|||
# Check if sed was executed successfully |
|||
|
|||
if [ $? != 0 ] |
|||
then |
|||
echo "Failed!" |
|||
echo -e "\n=======================================================================" |
|||
exit 1 |
|||
else |
|||
# Exit with success' |
|||
echo "Success!" |
|||
echo -e "\n=======================================================================" |
|||
exit 0 |
|||
fi |
|||
|
|||
|
|||
# END OF FILE |
|||
|
Loading…
Reference in new issue