mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
jcs: Setval added support for keys with spaces
This commit is contained in:
parent
5ecb9ca749
commit
7dd984ccf3
1 changed files with 27 additions and 15 deletions
42
scripts/jcs
42
scripts/jcs
|
|
@ -1247,11 +1247,11 @@ if [ $# != 3 ] ; then
|
|||
usage
|
||||
exit 0
|
||||
fi
|
||||
if [ ! -e $1 ] ; then
|
||||
if [ ! -e "$1" ] ; then
|
||||
echo $1 not found. Exiting.
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -w $1 ] ; then
|
||||
if [ ! -w "$1" ] ; then
|
||||
echo $1 is not a writable file. Exiting.
|
||||
exit 1
|
||||
fi
|
||||
|
|
@ -1262,8 +1262,8 @@ echo -n " + $1: set $2 to $3 ... "
|
|||
MYNAME=`basename $0`
|
||||
WD=`/bin/pwd`
|
||||
DATE=`date`
|
||||
test -e $1.$MYNAME && rm $1.$MYNAME
|
||||
grep $2 $1 >/dev/null 2>&1 || cat << EOF >> $1
|
||||
test -e "$1".$MYNAME && rm "$1".$MYNAME
|
||||
grep "$2" "$1" >/dev/null 2>&1 || cat << EOF >> "$1"
|
||||
#
|
||||
# added by $MYNAME on $DATE
|
||||
# called from within $WD
|
||||
|
|
@ -1280,26 +1280,38 @@ if echo "$3" grep -e " \|\t" >/dev/null 2>&1 ; then
|
|||
else
|
||||
VAL="$3"
|
||||
fi
|
||||
awk 'BEGIN {FS = "="}
|
||||
$1 == key { if ($2$3$4$5$6$7$8$9$10$11$12$13$14$15$16 != val) {
|
||||
awk '
|
||||
BEGIN {
|
||||
FS = "="
|
||||
}
|
||||
{
|
||||
left=$1
|
||||
sub(/^ */,"",left)
|
||||
sub(/ *$/,"",left)
|
||||
if (left == key) {
|
||||
if ($2$3$4$5$6$7$8$9$10$11$12$13$14$15$16 != val) {
|
||||
print key"="val >> outfile
|
||||
changed = changed $2 "-->" val" "
|
||||
++occ
|
||||
next
|
||||
}
|
||||
}
|
||||
{ print >> outfile }
|
||||
END { print "changed " (occ ? occ " occurence: " changed : "nothing.");
|
||||
exit occ }
|
||||
' \
|
||||
key=$2 val="$VAL" outfile="$1.$MYNAME" "$1"
|
||||
}
|
||||
{
|
||||
print >> outfile
|
||||
}
|
||||
}
|
||||
END {
|
||||
print "changed " (occ ? occ " occurence: " changed : "nothing.");
|
||||
exit occ
|
||||
} ' \
|
||||
key="$2" val="$VAL" outfile="$1.$MYNAME" "$1"
|
||||
|
||||
if [ ! $? = 0 ] ; then
|
||||
mv $1.$MYNAME $1
|
||||
mv "$1".$MYNAME "$1"
|
||||
mkdir -p $cfg_jcs_log_dir
|
||||
echo $1 >> $cfg_jcs_log_dir/changed_files.log
|
||||
echo "$1" >> $cfg_jcs_log_dir/changed_files.log
|
||||
else
|
||||
rm $1.$MYNAME
|
||||
rm "$1".$MYNAME
|
||||
fi
|
||||
} # end function jcs_setval
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue