#!/bin/bash cd "$(dirname "$0")" function prepareFile(){ path="$1" tmp_path="$(basename "$path")" ( sed -n '/CODE AUTOMATICALLY GENERATED BY genQueryMapper.sh/q;p' "$path" echo -e '\t// DO NOT EDIT BELOW THIS LINE, OR CHANGE THIS COMMENT, CODE AUTOMATICALLY GENERATED BY genQueryMapper.sh\n' ) > "$tmp_path" echo "$tmp_path" } function finishFile(){ path="$1" tmp_path="$(basename "$path")" echo -e "}\n" >> "$tmp_path" mv "$tmp_path" "$path" } result="$(prepareFile "src/main/java/com/moparisthebest/jdbc/ResultSetMapper.java")" # single object types cat src/main/java/com/moparisthebest/jdbc/ResultSetMapper.java | grep public | egrep '(toObject|toSingleMap)\(' | grep ', Calendar cal)' | while read method do #echo "method: $method" method_name=$(echo $method | egrep -o '[^ ]+\(') echo "ResultSetMapper.$method_name)" cat >> "$result" <> "$result" <> "$query" <> "$caching_query" <> "$null_query" done finishFile "src/main/java/com/moparisthebest/jdbc/QueryMapper.java" finishFile "src/main/java/com/moparisthebest/jdbc/CachingQueryMapper.java" finishFile "src/main/java/com/moparisthebest/jdbc/NullQueryMapper.java"