今天把Red Hat Enterprise Linux 5更换成了SUSE Linux,giam中MSN的聊天记录的文件名不兼容。
要把很多类似2007-04-16.035144+0800CST.html的文件名改成2007-04-16.035144.html
写了个bash脚本,改下文件名,贴出来,用的着的话作简单修改就行了:
ls 2007* > temp
awk '{print$1,$1}' temp > temp.sh
sed -i 's/^/mv /' temp.sh
sed -i 's/+0800CST//2' temp.sh
echo '#!/bin/sh' > temp
cat temp.sh >> temp
mv -f temp temp.sh
chmod 777 temp.sh
./temp.sh
rm -f temp.sh
发现openSUSE Linux自带的vncviewer不能发送Ctrl+Alt+Delete组合键,下载一个了tightvnc-1.3.9_javabin.tar.gz安装。
#mkdir /usr/local/tightvnc
#mv tightvnc1.3.9_javabin.tar.gz /usr/local/tightvnc
#cd /usr/local/tightvnc
#tar -zxf tightvnc1.3.9_javabin.tar.gz
执行起来太麻烦,写个类似vncviewer命令的脚本(20070727):
改进(20070802)
touch /usr/local/bin/vnc
chmod 755 /usr/local/bin/vnc
内容:
#!/bin/sh
cd /usr/local/vnc/classes/
case $1 in
--help)
echo 'usage:vnc [
[]]';
exit 0
;;
"")
echo 'usage:vnc [ []]';
echo
echo 'please input the username:';
read ans1;
host=$ans1;
;;
*)
host=$1;
;;
esac
case $2 in
0)
port=5900
;;
1)
port=5901
;;
2)
port=5902
;;
##省略N行
;;
9)
port=5909
;;
*)
port=5900
;;
esac
if [ "$3" = "" ];then
java VncViewer HOST $host PORT $port
else
java VncViewer HOST $host PORT $port PASSWORD $3
fi
以后直接执行vnc或vnc hostname就行了。
注:这个脚本写了1个多小时!仅仅因为if的条件语句中的$1参数没加双引号!希望后来者别犯这么愚蠢的错误!
把这个vnc的脚本简化一下(2008-03-20):
把第二个case语句替换成下面的内容,可省略一大片代码:
case $2 in
[0123456789] )
port=590$2
;;
[0123456789][0123456789] )
port=59$2
;;
* )
echo "You should iuput the Display#"
esac
Bash下产生随机数的脚本。虽然很简单,但是不知道的时候还是要费一段时间去查找:
#!/bin/sh
while true
do
# get 0-30 rand num
SLEEP_TIME=`expr $RANDOM % 30`
echo $SLEEP_TIME
sleep 1
done
阅读(1950) | 评论(0) | 转发(0) |