简单的key-value实现

来源:互联网 发布:淘宝企业店铺公司简介 编辑:程序博客网 时间:2024/05/16 04:58
今天写个shell脚本,需要存一些小数据,用数据库明显是太不必要了,那就写在文件里吧,为了方便存取,写了个简单的 key-value 实现, 支持增删改查就行啦。需要的拿去用~
  #!/bin/sh  # @author:hackooo@sina.cn  # Notice special chars inside key like / will replace with _ eg. abc/def => abc_def    SED=/bin/sed  DB=kv.db  # $1 : key  kv_get(){      key=`echo $1 | sed 's/\//_/g'`      $SED -n "s/^${key} \(.*\)/\1/p" $DB  }  # $1:key $2:value  kv_set(){      key=`echo $1 | sed 's/\//_/g'`      ori_value=`kv_get $key`      if [ $ori_value ]      then          #replace the old value          $SED -i "s/^${key} .*$/${key} ${2}/" $DB      else          #add a new record          echo "$key $2" >> $DB      fi  }  # delete  kv_del(){      key=`echo $1 | sed 's/\//_/g'`      $SED  -i "/^${key} /d"  $DB  }