在Linux下面使用sqlplus默认不可以使用上下键查找历史命令,使用起来很不方便,影响效率。不过,可以通过第三方工具rlwrap来解决这个问题。
rlwrap下载:http://utopia.knoware.nl/~hlub/uck/rlwrap/
当然也适用于Erlang的命令,为其添加历史命令记录
在Linux下面使用sqlplus默认不可以使用上下键查找历史命令,使用起来很不方便,影响效率。不过,可以通过第三方工具rlwrap来解决这个问题。
rlwrap下载:http://utopia.knoware.nl/~hlub/uck/rlwrap/
当然也适用于Erlang的命令,为其添加历史命令记录
#mkdir /data/conf/openvpn
up is a file containing vpn username/password on 2 lines
#vi /data/conf/openvpn/up
username
password
#vi /data/sh/rsync_my_files.sh
#!/bin/bash
#start openvpn in background
cd /data/conf/openvpn
/usr/sbin/openvpn –config openvpn.ovpn –auth-user-pass up –daemon
/usr/bin/rsync -vazu –password-file=/data/conf/rsync.pass rsy_user@192.168.1.100::db_file /data/backup/db_file
#disconnect from vpn server after synchronization
pkill openvpn
make rsync_my_files.sh executable
#chmod 700 /data/sh/rsync_my_files.sh
#!/bin/bash
#目录名类似于20100315,20100315long,20100316,20100316zhong,20100317等
#用法 sh count_dir_size.sh 日期最小数,日期最大数
#如果是2010-03-15到2010-03-17,则sh count_dir_size.sh 2010-03-15 2010-03-17
#Author johncan,2010-03-22
#COUNT_DATE=`date “+%Y%m%d” |cut -c1-5`
if [ -z “$1” ]
then
echo “please use $0 start_day end_day”
exit 1
fi
#将开始时间转换成时间戳
STA_TIME=`date -d “$1” +%s`
#将结束时间转换成时间戳
END_TIME=`date -d “$2” +%s`
cd /dir_which_files_are_stored
DR_TIME=${STA_TIME}
while [ “${DR_TIME}” -le “${END_TIME}” ]
do
#将时间戳转换为目录名的格式
STAND_DR_TIME=`date -d “1970-01-01 UTC ${DR_TIME} seconds” +%Y%m%d`
for DR in ${STAND_DR_TIME}*
do
#统计目录大小
DR_SIZE=`du -s ${DR} | awk ‘{print $1}’`
let “COUNT_DR_SIZE=${COUNT_DR_SIZE}+${DR_SIZE}”
done
let “DR_TIME=${DR_TIME}+86400”
done
echo ${COUNT_DR_SIZE}KB
awk ‘BEGIN{print “‘\””}’
awk ‘{print ” ‘\” “}’
其中: ‘\” 这三个’ 都是单引号
转载自:http://bbs.chinaunix.net/viewthread.php?tid=15773&extra=&page=2
[root@test200 ~]# cat test
a
b
c
d
e
f
[root@test200 ~]# sed ‘/c/{p;:a;N;$!ba;d}’ test
a
b
c
定义一个标签a,匹配c,然后N把下一行加到模式空间里,匹配最后一行时,才退出标签循环,然后命令d,把这个模式空间里的内容全部清除。
if 匹配”c”
:a
追加下一行
if 不匹配”$”
goto a
最后退出循环,d命令删除。