summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xinstall14
1 files changed, 8 insertions, 6 deletions
diff --git a/install b/install
index 416ec896..c6b4b8c0 100755
--- a/install
+++ b/install
@@ -305,20 +305,22 @@ append_line() {
line="$2"
file="$3"
pat="${4:-}"
+ lno=""
echo "Update $file:"
echo " - $line"
- [ -f "$file" ] || touch "$file"
- if [ $# -lt 4 ]; then
- lno=$(\grep -nF "$line" "$file" | sed 's/:.*//' | tr '\n' ' ')
- else
- lno=$(\grep -nF "$pat" "$file" | sed 's/:.*//' | tr '\n' ' ')
+ if [ -f "$file" ]; then
+ if [ $# -lt 4 ]; then
+ lno=$(\grep -nF "$line" "$file" | sed 's/:.*//' | tr '\n' ' ')
+ else
+ lno=$(\grep -nF "$pat" "$file" | sed 's/:.*//' | tr '\n' ' ')
+ fi
fi
if [ -n "$lno" ]; then
echo " - Already exists: line #$lno"
else
if [ $update -eq 1 ]; then
- echo >> "$file"
+ [ -f "$file" ] && echo >> "$file"
echo "$line" >> "$file"
echo " + Added"
else