shell记录登陆ip和操作
/etc/ptofile + http://www.tuicool.com/articles/RjamQne
日志路径
/tmp/ruige/root
日志
1、过滤加颜色标记
tail -f vip_dap_integration_2017-03-22.log | grep --color=auto “Mysql”
2、搜索关键字附近的日志
cat -n filename |grep "关键字
3、进入vim编辑模式:vim filename
输入“/关键字”,按enter键查找查找下一个,按“n”即可
·文件中输入行数定位代码
vim打开编辑代码,输入【:90】即可定位 输入【:set nu】显示行号。
·文件中输入关键字查找
vim打开编辑代码,输入【/mst】即可查找定位
·rz
服务器上用rz可将本地文件传到服务器上 sz filename 保存文件到客户端
·scp
远程拷贝到当前的工作目录 scp root@10.199.145.171:/home/jenkins/slave.jar ./
·curl
服务端执行url curl ‘http://www.vip,com/’
Log
打日志Log::info(‘hello’); 中断调试 var_dump();exit;
sed
在线编辑,一次处理一行内容。格式:sed [-options] [command] [stdin]
options:
-n :安静模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
-e :直接在命令列模式上进行 sed 的动作编辑;
-f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作;
-r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法)
-i :直接修改读取的文件内容,而不是输出到终端。
command:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~ 如:sed ‘\test\a/abc’ 匹配字符串test行后加入一行abc
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!如:sed ‘\test\c/hello’ 匹配字符串test的一行后取代为hello这行
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚; 如: sed -e ‘2,5d’ 将第 2~5 行删除
i : 插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);如:sed ‘2i abc’ 在第二行前加入一行abc
p :打印匹配行。通常 p 会与参数 sed -n 一起运行~ 如:sed -n ‘2,5p’
s :取代,可以直接进行取代的工作!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是。sed ‘s/要被替换的字符串/新的字符串/g’
stdin:文件对象
mysql
查看是否安装mysql rpm -qa | grep mysql
启动mysql服务 /apps/sh/mysql5.sh start mysql service -u root -p vipshop
查看进程 ps -ef | grep mysql
连接mysql server /apps/svr/mysql5/bin/mysql ( -uroot -p ) password默认为空
mysql命令:
修改用户密码 SET PASSWORD FOR ‘用户名’@‘主机’ = PASSWORD(‘密码’);
创建新用户并授权 grant all privileges on . to 用户名@’%’ identified by ‘密码’ ;
刷新系统权限表后生效 flush privileges;
列出数据库/表 show databases;/ show tables;
读取数据库 use 数据库名;
插入数据 insert into 表名 values();
查询数据 select */字段名 from 表名 where 字段名 = 值;
查看前几行记录 select * from 表名 order by id limit 0,2;
删除记录 delete from 表名 where 字段名=值;
修改数据 update 表名 set 字段名=值 where id=1;
数据库新增一个字段
ALTER TABLE home_brand_pool
ADD COLUMN slice
tinyint(1) NOT NULL DEFAULT 1 COMMENT ‘早十或晚八标志位,0为全天,1为早十,2为晚八’ ;
find 查找内容包含关键字的文件
find ./ -name “*.php” |xargs grep -in “getSpecialBrandList”
ps 查看系统资源占用情况
ps -ef | grep ngxin 查看ngxin进程
ps -ef | sort -k7 ,将进程按运行时间排序,看哪个进程消耗的cpu时间最多
内存资源 ->free显示内存使用情况 vmstat磁盘情况
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
du -sh # 查看指定目录的大小
grep MemTotal /proc/meminfo # 查看内存总量
grep MemFree /proc/meminfo # 查看空闲内存量
uptime # 查看系统运行时间、用户数、负载
cat /proc/loadavg # 查看系统负载 CPU平均使用率
网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息
###查看文件夹大小
du -sh dap-admin.vip.vip.com/
查找yum安装包
yum list|grep php7
git 本地回滚某个版本代码
git reset --hard caa0ebf90a843b34c556c769527db27a3192c1cf
$ telnet localhost 11211
Trying 127.0.0.1…
Connected to localhost.
Escape character is ‘^]’.
flush_all
OK
quit
端口查看是否被占用
netstat -anp|grep 80
查看centos版本
cat /etc/issue
tcpdump
tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ][ -i 网络接口 ] [ -r 文件名] [ -s snaplen ][ -T 类型 ] [ -w 文件名 ] [表达式 ]
-a 将网络地址和广播地址转变成名字;
-w 直接将包写入文件中,并不分析和打印出来;
-r 从指定的文件中读取包
-i 指定监听的网络接口;
-v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;
-vv 输出详细的报文信息;
-d 将匹配信息包的代码以人们能够理解的汇编格式给出;
-dd 将匹配信息包的代码以c语言程序段的格式给出;
-ddd 将匹配信息包的代码以十进制的形式给出;
-e 在输出行打印出数据链路层的头部信息;
-f 将外部的Internet地址以数字的形式打印出来;
-l 使标准输出变为缓冲行形式;
-n 不把网络地址转换成名字;
常用命令:
tcpdump -s0 -A -i [网络接口] port 80 #查看80端口请求
tcpdump -A src host 192.168.189.155 #查看源ip为192.168.189.155的包
tcpdump -i eth1 host 192.168.1.123 and port 80 -w /tmp/xxx.cap #抓192.168.1.123的80端口的包