存档
find -name ‘*.html’ | xargs perl -pi -e ’s|href="(.*\.html)"|href="/html/$1"|g’
如上所示为我在所有形如xxx.html前加上/html/
正则查找,非常灵活方便。留帖备忘
昨天将服务器配置了svn服务,现作整理(以centos linux为例),以作备忘。
1.安装基本软件
yum install subversion subversion-tools
yum install libapache2-svn mod_dav_svn
2.创建版本库
假定我们将版本库存放在/data/svn/repos
mkdir -p /data/svn/repos
cd /data/svn/repos
svnadmin create test
如果要导入一些已有的代码,假定/data/www/test有一些写好的代码要导入到库中
svn import file:///data/www/test /data/svn/repos/test
这里导入成功后版本为1
3. 修改/etc/httpd/conf.d/svbversion.conf
(该文件在安装mod_dav_svn后自动产生)
取消注释以下行
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /repos>
DAV svn
SVNParentPath /data/svn/repos
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password [...]
由于公司网站的日志文件按天为目录存放,格式如下
20090901
20090902
……
时间一长,硬盘老暴满,正好前些天看过点shell的知识,应用一下^_^
#!/bin/bash
#日志保留月份数
reserveMonth=2
#需保存的最早一天的日志
oldest=`date -d "-$reserveMonth month" +%Y%m%d`
#日志存放目录
workdir=’/home/phpman/test’
#搜索目录
dirs=`ls $workdir -F | grep -P ‘\d{8}/’ | sed ’s/.$//’`
for i in $dirs;do
#早于最早那天的,删除
if test $i -le $oldest
then
tmp_dir=${workdir}/$i
#记录此次操作的记录
echo "Directory ‘$tmp_dir’ deleted at `date ‘+%Y-%m-%d %H:%M:%S’`" >> ${workdir}/delete.log
[...]
使用putty的用户都知道,可以使用-l -pw参数设置快捷方式,以自动连接至远程主机,也可以用key方式 。
ubuntu下要用终端terminal自动连,也可以实现。首先装sshpass,apt-get就可以了。
然后在system->preferences->main menu里加一个new item项,其中command写上gnome-terminal –command ’sshpass -p pass ssh user@anyhost’就可以了。怎么样,很方便吧^_^
当然,putty亦有linux版的~
使用dmidecode可以查看系统各硬件的详细信息CPU,各级缓存,内存,板载插口等信息
如我使用dmidecode | grep -A16 “Memory Device$”查看内存信息
使用kde的konsole连接局域网内服务器慢,今用ssh -v 看了下,发现是
debug1: Next authentication method: gssapi-with-mic
一直等待。原来/etc/ssh/ssh_config中GSSAPIAuthentication选项被配置成yes后,会发起一个_kerberos.<hostname>的GSSAPI认证请求,这样,ssh会一直等待至GSS认证超时失败。所以等待了很久。
解决办法,将该选项置为no
GSSAPIAuthentication no
至于GSSAPI认证具体访式,有待以后研究
sshd配置参考http://lamp.linux.gov.cn/OpenSSH/sshd_config.html
rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,
我们下面就对它的选项一一进行分析说明。
对站长来说,丢失数据又没得恢复绝对是恶梦……因此,想到将linux下的数据库和www目录自动备份,因为有win主机闲置,那就存它那了。闲话少说,现在开工:
首先给win主机安装cwrsync(基于cgwin和rsync的同步软件)
…………
memcache是一个高效快速的,以内存存取的高速缓存,其保存方式通过“键”=>“值”的方式,对key进行hash存储,因而查询速度快,避免硬盘的反复擦写,也正如此,断电或重启就得重新为它“灌”内容了。
准备工作:
1.先安装libevent,因为memcached是依赖它的
2.memcached下载与安装
# ./memcached -d -m 50 -p 11211 -u root
参数说明 -m 指定使用多少兆的缓存空间;-p 指定要监听的端口; -u 指定以哪个用户来运行
3.启动./memcached -p 11211 如果报如下错
error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
那么,注册一下libevent扩展
# vi /etc/ld.so.conf.d/libevent-i386.conf
内容为你编译生成的libevent库的路径,默认为/usr/local/lib
运行
# ldconfig
好了,这样memcachd就装好了,接下来安装php支持,可以通过phpize或静态编译方式 ,我是通过后者
下载最新版pecl memcache包解压至phpdir/ext
#rm configure
#buildconf –force 当然这个需要
#./configure –with-memcache –enable-memcache
需要注意: 要运行“buildconf”脚本,需要 autoconf ,如果没有或版 本过低就先升级它
OK,写几行试试~
<?php
set_time_limit(1000);
$host = ‘localhost’;
$memcache = new Memcache;
$memcache->connect($host,11211);
for($i=0;$i<100000;$i++){
/*存上10w个看看*/
$memcache->set(’k’.$i,$i,false,1000);
}
print_r($memcache->getServerStatus($host));
print_r($memcache->getStats());//查看memcached服务状态
?>
Linux统计当前目录代码行数
find . -name “*.php” -exec wc -l {} \; | awk ‘BEGIN {f=0;l=0} {f++;l=l+$1} END {printf(“total: %d files, %d lines\n”,f,l)}’
最新评论