dots/.local/bin/sedi

35 lines
380 B
Bash
Executable File

#!/bin/sh
# Edit a file that requires superuser permissions without running the editor as root
# Substitute for sudo -e that uses doas instead.
if [ -z $1 ]
then
exit
fi
FNAME=$(mktemp)
if [ -e $1 ]
then
cp $1 $fname
fi
$EDITOR $FNAME
DIFF=""
if [ -e $1 ]
then
DIFF=$(diff $FNAME $1)
else
DIFF=$(cat $FNAME)
fi
if [ -n "$DIFF" ]
then
doas cp $FNAME $1
fi
rm $FNAME