1、vi编辑器中替换
:g/aaaa/s//bbbb/g 把aaaa替换为bbbb 例如: :g/\"/s/\\\"/g test.txt 把test.txt中的"全部替换为\"
2、替换当前目录中所有文件中的指定字符串
sed -i "s/jack/tom/g" `grep "jack" -rl ./`
3、替换指定文件中的指定字符串
sed -i "s/jack/tom/g" test.txt
4、在文本中的每一行开头插入指定字符串
awk '{print "aaaa"$0}' filename
5、在文本中的每一行结尾插入指定字符串
awk '{print $0 "aaaa"}' filename
6、在文本中每一行的指定列插入字符串
awk '$O=$O" X"' urfile
7、df 查看文件系统位置及所占用的磁盘空间大小
8、du 查看当前文件夹的大小
du -h --max-depth=1 查看当前目录深度为1的文件夹占用空间大小
[root@cps local]# du -h --max-depth=1
8.0K ./etc
4.0K ./lib64
3.9M ./include
4.0K ./sbin
96K ./share
4.0K ./games
2.1M ./apr-util
3.5M ./apache-maven-3.0.3
390M ./jdk1.6
166G ./tomcat2
137M ./activeMQ
98M ./redis
4.0K ./libexec
357M ./tomcat3
4.9M ./lib
636K ./libmcrypt
2.9M ./apr
4.0K ./cpsTemp
2.3G ./tomcat-6.0
60M ./bin
33M ./apache2
4.0K ./src
98M ./jmeter
386M ./loadrunner-11-load-generator
170G .
9、mkdir
mkdir -p 递归创建目录
10、AWK正则表达式
‘+’:匹配一个或多个前面的字符,如awk '/cbd+abc/' filename 匹配以cbd开头,中间有一个或多个d,以abc结尾
‘?’:匹配零个或一个前面的字符,如awk '/abc?/' filename 匹配以abc开头,有一个或零个c
‘|’:表示或的意思,如awk '/abc | efg/' filename 匹配abc或efg的任意一个
‘()’:把字符组合到一起,如awk '/ab(ff)?(ee)+cd/' filename 匹配ab开头包含一个或零个ff并且包含一个或多个ee,以cd结尾
‘{m}’:匹配正好有m个前面的字符,如awk '/a{3}/' filename 匹配三个a
‘{m,}’:匹配至少有m个前面的字符,如awk '/a{2,}/' filename 匹配至少有两个a
‘{m,n}’:匹配至少m个、至多n个前面的字符,如awk '/a{3,5}/' filename 匹配至少3个a,最大5个a
[string]:匹配[]内的任意字符,如awk '/123[a-z]/' filename 匹配123后接任意字母
[^string]:^表示非的意思,匹配任意非[]内的字符,如awk '/123[^a-z]/' filename 匹配123非字母
‘~’和‘!~’:表示包含和包含,如awk '$1 ~ /n/' filename 匹配第一个字段包含n
‘^’:表示开头标识,如awk '$2 ~ /^n/' filename 匹配第二个字段以n开头
‘$’:表示结尾标识,如awk '$2 ~ /y$/' filename 匹配第二个字段以y结尾
‘.’ :匹配任一字符,如awk ‘/ab.d/’ filename 匹配ab中间为任一字符,d为结束
‘*’:匹配任意字符,如awk ‘/ab*d/’ filename 匹配ab中间位任意字符,d为结束
‘\’:转义字符,如awk ‘/a\/\//’ filename 匹配a//类型
11、grep
查找指定文件夹中的指定字符串:grep string -R filename
过滤结果中不显示指定行:grep -v ‘aaa\|bbb’ 如ps aux|awk '{print $4"\t"$11}'|grep -v '0.0\|0.1'|sort -r
12、chkconfig
开机启动:chkconfig service-name on
开机关闭:chkconfig service-name off
13、查看端口对应的进程
方法一:netstat -lnp
如:
[root@Oracle2 test]# netstat -lnp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 13789/nginx
tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 4549/mongod
tcp 0 0 :::8080 :::* LISTEN 6095/java
tcp 0 0 ::ffff:127.0.0.1:8020 :::* LISTEN 24041/java
tcp 0 0 ::ffff:127.0.0.1:8059 :::* LISTEN 1111/java
tcp 0 0 :::8060 :::* LISTEN 1111/java
tcp 0 0 :::8095 :::* LISTEN 24041/java
tcp 0 0 ::ffff:127.0.0.1:8005 :::* LISTEN 6095/java
tcp 0 0 :::8009 :::* LISTEN 6095/java
方法二:lsof -lnP
[root@Oracle2 test]# lsof -lnP +M -i4 | grep 80
mongod 4549 0 10u IPv4 4869056 0t0 TCP *:28017 (LISTEN)
sshd 5743 0 3u IPv4 17680461 0t0 TCP 192.168.7.52:22->192.168.5.64:4663 (ESTABLISHED)
nginx 13789 0 6u IPv4 14292522 0t0 TCP *:80 (LISTEN)
nginx 13790 99 6u IPv4 14292522 0t0 TCP *:80 (LISTEN)
14、scp
* 命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
* 例子:
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3
* 复制目录:
* 命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
* 例子:
scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/
scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/
上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录