Changed tactics. Sed's -i flag is not cross-platform.

This commit is contained in:
pestaa 2012-04-06 11:15:06 +02:00
parent 0e11583b1e
commit f9c945cc86
3 changed files with 5 additions and 10 deletions

View File

@ -34,8 +34,7 @@ fi
case "$state_should" in
absent)
# remove lines starting with key
echo "sed -i cdist-backup '/^$key\($delimiter\+\)/d' \"$file\""
echo "rm -f \"$file.cdist-backup\""
echo "sed '/^$key\($delimiter\+\)/d' \"$file\" | tee \"$file\" > /dev/null"
;;
present)
case "$state_is" in
@ -45,8 +44,7 @@ case "$state_should" in
;;
wrongvalue)
# change exisiting value
echo "sed -i cdist-backup \"s|^$key\($delimiter\+\).*|$key\1$value|\" \"$file\""
echo "rm -f \"$file.cdist-backup\""
echo "sed \"s|^$key\($delimiter\+\).*|$key\1$value|\" \"$file\" | tee \"$file\" > /dev/null"
;;
*)
echo "Unknown explorer state: $state_is" >&2

View File

@ -32,8 +32,7 @@ DONE
removed)
cat << DONE
su - $user -c "rm -Rf \"\\\$HOME/.rvm\";
sed -i cdist-backup '/rvm\/scripts\/rvm/d' \"\\\$HOME/.bashrc\""
rm -f \"\\\$HOME/.bashrc.cdist-backup\""
sed '/rvm\/scripts\/rvm/d' \"\\\$HOME/.bashrc\" | tee \"\\\$HOME/.bashrc\" > /dev/null"
DONE
;;
esac

View File

@ -32,8 +32,7 @@ case "$state_should" in
present)
case "$os" in
archlinux)
echo "sed -i cdist-backup 's/^\\(DAEMONS=.*\\))/\\1 $name)/' /etc/rc.conf"
echo "rm -f /etc/rc.conf.cdist-backup"
echo "sed 's/^\\(DAEMONS=.*\\))/\\1 $name)/' /etc/rc.conf | tee /etc/rc.conf > /dev/null"
;;
debian|ubuntu)
echo "update-rc.d \"$name\" defaults >/dev/null"
@ -67,8 +66,7 @@ case "$state_should" in
archlinux)
# Replace a) at the beginning b) in the middle c) end d) only
# Support @name as well...makes it more ugly, but well...
echo "sed -i cdist-backup /etc/rc.conf -e 's/^\\(DAEMONS=(\\)@\\{0,1\\}$name /\\1/' -e 's/^\\(DAEMONS=(.* \\)@\\{0,1\\}$name \\(.*\\)/\\1\\2/' -e 's/^\\(DAEMONS=(.*\\) @\\{0,1\\}$name)/\\1)/' -e 's/^\\(DAEMONS=(\\)@\\{0,1\\}$name)/\\1)/'"
echo "rm -f /etc/rc.conf.cdist-backup"
echo "sed /etc/rc.conf -e 's/^\\(DAEMONS=(\\)@\\{0,1\\}$name /\\1/' -e 's/^\\(DAEMONS=(.* \\)@\\{0,1\\}$name \\(.*\\)/\\1\\2/' -e 's/^\\(DAEMONS=(.*\\) @\\{0,1\\}$name)/\\1)/' -e 's/^\\(DAEMONS=(\\)@\\{0,1\\}$name)/\\1)/' | tee /etc/rc.conf > /dev/null"
;;
debian|ubuntu)
echo update-rc.d -f \"$name\" remove