diff --git a/vcsh b/vcsh
index 86538d03199d1c7927fa7955fcaa60a8e15bc25f..e019a1b47dc4f00c4fb830d8b673258e19c17c7a 100755
--- a/vcsh
+++ b/vcsh
@@ -186,7 +186,7 @@ alias_write() {
 	[ "$2" == '=' ] || fatal 'Invalid alias format'
 	if [ -n "$(alias_get $1)" ]; then
 		local regex="s/^$1\s*=.*/$@/"
-		sed -i -re "$regex" "$XDG_CONFIG_HOME/vcsh/aliases"
+		sed -i.bak -re "$regex" "$XDG_CONFIG_HOME/vcsh/aliases"
 	else
 		echo "$@" >> "$XDG_CONFIG_HOME/vcsh/aliases"
 	fi