-
- [[ -w $file ]] || s=sudo
-
-
- if $exists; then
- local temp="$(mktemp -d)/$file_name"
- cp "$file" "$temp"
- cp /dev/null "$file"
- local in_section=false
- while IFS= read -r line; do
- if [[ $line == $begin ]]; then
- in_section=true;
- fi
- if ! $in_section; then
- printf '%s\n' "$line" >> $file
- fi
- if [[ $line == $end ]]; then
- in_section=false;
- fi
- done < "$temp"
- fi
-
- IFS= read -d '' -n 1 -r init
- if [[ $init ]]; then
- $s tee -a "$file" >/dev/null <<<"$begin"
- printf '%s' "$init" | $s tee -a "$file" >/dev/null
- $s tee -a "$file" >/dev/null
- $s tee -a "$file" >/dev/null <<<"$end"
+ fi
+
+ [[ -w $file ]] || s=sudo
+
+
+ if $exists; then
+ local temp="$(mktemp -d)/$file_name"
+ cp "$file" "$temp"
+ cp /dev/null "$file"
+ local in_section=false
+ while IFS= read -r line; do
+ if [[ $line == $begin ]]; then
+ in_section=true;
+ fi
+ if ! $in_section; then
+ printf '%s\n' "$line" >> $file
+ fi
+ if [[ $line == $end ]]; then
+ in_section=false;
+ fi
+ done < "$temp"
+ fi
+
+ IFS= read -d '' -n 1 -r init
+ if [[ $init ]]; then
+ $s tee -a "$file" >/dev/null <<<"$begin"
+ printf '%s' "$init" | $s tee -a "$file" >/dev/null
+ $s tee -a "$file" >/dev/null
+ $s tee -a "$file" >/dev/null <<<"$end"
+ fi
+
+ if ! $exists; then
+ ret=1
+ if $verbose; then
+ echo "New file $file:"
+ cat "$file"