woodyle

博客园 首页 新随笔 联系 订阅 管理

1、正则表达式

\w 匹配任何字类字符,包括下划线。与“[A-Za-z0-9_]”等效。

\W 与任何非单词字符匹配。与“[^A-Za-z0-9_]”等效。

+    一次或多次匹配前面的字符或子表达式。例如,“zo+”与“zo”和“zoo”匹配,但与“z”不匹配。+ 等效于 {1,}。
[xyz] 字符集。匹配包含的任一字符。例如,“[abc]”匹配“plain”中的“a”。
[^xyz] 反向字符集。匹配未包含的任何字符。例如,“[^abc]”匹配“plain”中的“p”。
{n} n 是非负整数。正好匹配 n 次。例如,“o{2}”与“Bob”中的“o”不匹配,但与“food”中的两个“o”匹配。
{n,} n 是非负整数。至少匹配 n 次。例如,“o{2,}”不匹配“Bob”中的“o”,而匹配“foooood”中的所有 o。“o{1,}”等效于“o+”。“o{0,}”等效于“o*”。
{n,m} M 和 n 是非负整数,其中 n <= m。匹配至少 n 次,至多 m 次。例如,“o{1,3}”匹配“fooooood”中的头三个 o。'o{0,1}' 等效于 'o?'。注意:您不能将空格插入逗号和数字之间。

2、grep用法

1)grep -w指定要搜索的单词

2)grep '<seven' test.txt         grep 'seven>' test.txt

   grep '^seven' test.txt    grep 'seven$' test.txt

   以seven开头和结尾.

3)grep -C 1 twentyseven test.txt   

          -A 1        -B 1    显示上下文和下文/上文

4)grep "twenty[1-4]" test.txt  或grep "twenty[^1-4]" test.txt   包括1-4或不包含1-4中任一字符的;

5)grep -E "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" /etc/resolv.conf   显示IP地址行

   grep -v '#' /etc/resolv.conf | grep -oE 'b[0-9]{1,3}(.[0-9]{1,3}){3}b'    显示IP但不包含#的行

   -o 仅显示匹配内容

6)vmstat -z | grep -E "(sock|ITEM)"    |或符号,注意-E 及 "",或''亦可;

7)--color  高亮显示

8)grep -rni allow /usr/src/sys/dev/ | grep unsupp   -r 读取文件夹下所有文件  -n 显示行数 -i  忽略大小写

3、fork逻辑炸弹,死循环,待会就CPU 100%挂了(bash shell程序)

:() { :|:& };:

或者

.() { .|.& };.

4、wget -q  http://forum.z27315.com/proxy.txt  -o  http-proxy.txt 

5、crontab -e 编辑/crontab -l查询

6、url中# ? &的含义

#是用来指导浏览器动作的,对服务器端完全无用。所以,HTTP请求中不包括#。#后面出现的任何字符,都会被浏览器解读为位置标识符,改变#不触发网页重载。

?连接作用,用来连接参数等信息;清除缓存,加?后浏览器认为是一个新地址,重新读取。

 &不同参数的间隔符

7、$curl -o #2_#1.jpg http://cgi2.tky.3web.ne.jp/~{zzh,nick}/[001-201].JPG 

循环(引用)下载

8、linux进程通信signal

SIGINT   当键盘按下CTRL+C从shell中发出信号,信号被传递给shell中前台运行的进程,对应该信号的默认操作是中断 (INTERRUPT) 该进程。

SIGQUIT  当键盘按下CTRL+\从shell中发出信号,信号被传递给shell中前台运行的进程,对应该信号的默认操作是退出 (QUIT) 该进程。

SIGTSTP  当键盘按下CTRL+Z从shell中发出信号,信号被传递给shell中前台运行的进程,对应该信号的默认操作是暂停 (STOP) 该进程。

SIGCONT  用于通知暂停的进程继续。

SIGALRM  起到定时器的作用,通常是程序在一定的时间之后才生成该信号;程序安装了SIGALRM处理程序后,alarm(t)在t时间超时后系统发送SIGALRM信号,当前进程根据安装登记时的程序进行处理,如未安装处理程序则终止当前进程。

 9、stdout数据自动刷新:\r回到行首不换行,\n回到行首并换行

print " seconds: ",CNT,"\r",
# sys.stdout.write(" seconds: "+unicode(CNT)+"\r")
sys.stdout.flush()

虽然stderr和stdout默认都是指向屏幕的,但是stderr是无缓存的,程序往stderr输出一个字符,就会在屏幕上显示一个;而stdout是有缓存的,只有遇到换行或者积累到一定的大小,才会显示出来。

10、进程在内存中占用如下四块区域:stack(局部变量)、heap(堆,动态变量)、global data(全局变量)、text(指令),Text和Global data在进程一开始的时候就确定了,并在整个进程中保持固定大小,其中stack与heap之间有一块未分配区域,用于stack扩展,一个栈,只有最下方的帧可被读写;

多线程的进程在内存中有多个栈。多个栈之间以一定的空白区域隔开,以备栈的增长。每个线程可调用自己栈最下方的帧中的参数和变量,并与其它线程共享内存中的Text,heap和global data区域。

11、新增列表 iptables -I INPUT -p tcp --dport 8000 -j ACCEPT

/sbin/service iptables save保存规则/etc/sysconfig/iptables,原文件保存为iptables.save

12、visudo,找到root    ALL=(ALL)       ALL
    增加woodyle  ALL=(ALL)       ALL

然后:wq!即可

13、$ ./configure

$ make
$ make install           (注:运行这个要有足够的权限)
$ make clean

14、$who   $who am i $pkill -kill -t pts/1  $pkill -9 -t pts/1  

15、/etc/init.d/rc.local文件末尾加上nohup python /home/...../manage.py runserver 0.0.0.0:8000 &

利用命令 sudo  update-rc.d 来启动和停止开机时的服务。例如:

sudo update-rc.d -f myservice remove
sudo update-rc.d -f myservice default

16、gcc test.c -o test  

./test

17、$sudo su

$passwd修改密码

18、mysql安装

$yum install mysql
$yum install mysql-server
$yum install mysql-devel
$chgrp -R mysql /var/lib/mysql
$chmod -R 770 /var/lib/mysql

$service mysqld start
$vim /etc/my.cnf

skip-grant-tables #添加这句话,这时候登入mysql就不需要密码

重启mysqld

$mysql                                  登入mysql

mysql> USE mysql ;
mysql> UPDATE user SET Password=PASSWORD('srtszxj10') WHERE user.User='root';
mysql> flush privileges;
$vim /etc/my.cnf
注释掉skip-grant-tables
重启mysqld

$sudo chkconfig --level 2345 mysqld on   #开机启动

19、

sudo yum -y install epel-release扩展源
sudo yum -y install python-pip
sudo yum clean all

20、$sudo netstat -ap| grep 8000

21、mkdir -p /Library/WebServer/Documents/opticoimgs 如需建立母目录会自动建立。

22、date -R   查看目前所处的时区,

tzselect 修改时区

sudo lsof -i:123

sudo kill -9 1387

sudo ntpdate time.windows.com

posted on 2015-07-05 23:12  woodyle  阅读(223)  评论(0编辑  收藏  举报