add --create and --ifexists options to line

This commit is contained in:
stephan 2022-07-29 22:46:54 +02:00
parent d4bf41ce3b
commit a379bfc742
5 changed files with 20 additions and 2 deletions

View File

@ -0,0 +1,2 @@
create
ifexists

View File

@ -34,8 +34,16 @@ state_should="$(cat "$__object/parameter/state")"
state_is="$(cat "$__object/explorer/state")" state_is="$(cat "$__object/explorer/state")"
if [ -z "$state_is" ]; then if [ -z "$state_is" ]; then
printf 'The file "%s" is missing. Please create it before using %s on it.\n' "$file" "${__type##*/}" >&2 if [ -f "$__object/parameter/create" ]; then
exit 1 echo "touch $file"
else
# only bark if the file should exists
if [ -f "$__object/parameter/ifexists" ]; then
exit 0
fi
printf 'The file "%s" is missing. Please create it before using %s on it.\n' "$file" "${__type##*/}" >&2
exit 1
fi
fi fi
if [ "$state_should" = "$state_is" ] || \ if [ "$state_should" = "$state_is" ] || \

View File

@ -21,6 +21,9 @@ OPTIONAL PARAMETERS
after after
Insert the given line after this pattern. Insert the given line after this pattern.
create
It the file does not exist then create an empty file
before before
Insert the given line before this pattern. Insert the given line before this pattern.
@ -28,6 +31,9 @@ file
If supplied, use this as the destination file. If supplied, use this as the destination file.
Otherwise the object_id is used. Otherwise the object_id is used.
ifexists
Only apply the line if the file exists.
line line
Specifies the line which should be absent or present. Specifies the line which should be absent or present.

View File

@ -0,0 +1 @@
false

View File

@ -0,0 +1 @@
false