#vim查看日志
$ vim app.log
{查找:打开以后,使用“ / ” + ”关键字“ ,回车即可;
: q! 放弃所有修改,退出编辑程序
: sudo vim /etc/hosts
}
#less查看日志
$ less app.log //跟vim类似,但是只查看,不能修改
#查看动态后10条日志
$ tail -f app.log
$ tail -n 20 app.log(查看后20条)
ctrl+c: 停止打印
#curl get请求 执行后,该URL的html就会显示在屏幕上了
curl "http://api.stanlee.wacai.info/faceless/proxy/lgd_score?aid=27223225&uid=26073973"
#查看curl的执行时间
time curl 'http://api.loan.wacai.info/goblin/web-api/voice/agent/queryByMobile?loginUser=donghuang&phone=13764268709' -v
##curl post 请求
curl -X POST -H 'Content-Type: application/json' -d '{ "agentList": [ "aiye", "bajiao" ], "beginDate": "20170828" }' 'http://api.loan.wacai.info/yo/ivr/report/list'
#把结果存起来
curl "http://collections/0/contactCallRecordsStats?userPhoneNumber=18078158526" -O /baota/log.txt
#取出文件app.log中包含kafka的行,并把找到的关键字加上颜色
grep --color=auto 'kafka' app.log
#ll的输出过滤出app.log文件
ls -l | grep -i "app.log"
# 找出当前目录下名称为app.log的文件
find . -name "app.log*"
#cat命令,用于查看文本文件的内容,可用管道less一起使用
cat text | less app.log
#cp命令把文件file1、file2复制到目录dir中
cp file1 file2 dir
#把文件。zshrc 复制一份重命名为.zshrc.orig
cp ~/.zshrc ~/.zshrc.orig
#mv命令 移动文件
cp file1 file2 dir
假设复制源目录 为 dir1 ,目标目录为dir2。怎样才能将dir1下所有文件复制到dir2下了
如果dir2目录不存在,则可以直接使用
cp -r dir1 dir2
即可。
如果dir2目录已存在,则需要使用
cp -r dir1/. dir2
如果这时使用cp -r dir1 dir2,则也会将dir1目录复制到dir2中,明显不符合要求。
# 当前进程
$ ls /proc/
#查看内存信息
$ cat /proc/memi
#查看CPU信息
$ cat /proc/CPUinfo
#查看IP信息(等同ifconfig)
ip -a
#可用内存
$ free -h
//查看系统中文件的使用情况
df -h
//查看当前目录下各个文件及目录占用空间大小
du -sh *
//方法一:切换到要删除的目录,删除目录下的所有文件
rm -f *
//方法二:删除logs文件夹下的所有文件,而不删除文件夹本身
rm -rf log/*
#当前目录大小
$ du -sh
#硬盘使用情况
$ df -h
#目录下每个文件大小
ll -ash
#也会列出当前文件夹下所有文件对应的大小
du -sh *
#清空日志文件内容
: > common-error.log
echo "" > std_out.log
#cd
$ cd /data/program/logs/com.wacai.loan/assignment-service/app_log(测试日志目录)
#新建文件夹
$ mkdir test
#pwd 查看当前目录
#whoami 当前登录用户
#以长数据串的形式列出当前目录下的数据文件和目录
$ ls -l
#echo 输出变量
$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/appweb/bin:/data/program/java/bin
#查找日志
less app-2017-05-21.2.log | grep 'getM1Risk'
#模糊查找某天日志
grep -i 'voiceApplication' app-2017-08-03*.log(-i 不区分大小写)
n:下翻
ctrl + n :上翻
ctrl+f(forward):下翻
ctrl + b (back):上翻
#搜索日志
/str
n:查找内容的下一个
N:查找内容的上一个(向上查找)
ctrl+a:到命令行的头
ctrl +e(end) :到命令行的尾巴
#.bash_profile配置环境变量
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
export M2_HOME=/Users/bingpo/Bin/apache-maven-3.5.0
export MYSQL_HOME=/usr/local/mysql
export PATH=$JAVA_HOME/bin:$MYSQL_HOME/bin:$M2_HOME/bin:$PATH
##
1。 把日志存到当前服务器当前目录
grep -i 'start update auto call' app-2017-08-04*.log |grep '2017-08-03 09:' >> baota.txt
2.可在当前路径查看 less baota.txt(看完删了,rm baota.txt)
3.登到跳板机,下到跳板机
远程拷贝文件的命令, scp 源文件 目标文件
scp root@10.10.10.10:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/
scp appweb@10.1.13.209:/data/program/logs/com.wacai.loan/goblin-web-api/app_log/baota.txt ./
4.下到本地
sz baota.txt
##
1.找系统的一个进程
ps -ef|grep SecureCRT
501 8522 1 0 12:30下午 ?? 0:10.87 /Applications/SecureCRT.app/Contents/MacOS/SecureCRT
ps 86835//Pid
2.查看占用该端口的进程
lsof -i:2181
3.杀死这个进程
kill -9 8522
#登录远程机器
telnet 127.0.0.1 8080
#redis 客户端登录
redis-cli -h 127.0.0.1 -p 8080
##
netstat -ano|grep 80
##查看线程
top -p 4576 -H
4786 appweb 20 0 5851m 1.4g 14m S 0.3 38.1 1:12.19 java
4787 appweb 20 0 5851m 1.4g 14m S 0.3 38.1 1:11.01 java
##
1.转16进制
printf '%x\n' 4800
12c0
查看进程所有线程的快照(ThreadDump) jstack -l [pid] -l表示锁的相关信息
jstack 4576|grep 12c0 -A 50
jstack -l 999 |grep kkk >> ./baotatxt
/// 一个线程的所有信息demo
"commons-pool-EvictionTimer" #23 daemon prio=5 os_prio=31 tid=0x00007fc0e4476000 nid=0x5c03 in Object.wait() [0x0000700003b2b000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:552)
- locked <0x000000078ec2a590> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:505)
Locked ownable synchronizers:
- None
///
##
cat /etc/hosts
##定时执行脚本文件
1.创建脚本文件
cat > risk.sh(linux的脚本是.sh格式)
2.写入curl语句(postman看code里的curl)
curl -X GET \
'http://faceless.stanlee.test.wacai.info/faceless/proxy/lgd_score?aid=26234987&uid=86125675' \
3.改变文件的权限
chmod 777 risk.sh
ls -l 查看文件的权限
4.执行并转存输出结果
./risk.sh >> 1.txt
##crontab定时任务
1.编辑定时任务
crontab -e
01 15 * * 1-6 /User/baota/dingcan.sh >> 2.txt
2.查看定时任务
crontab -l
##########超级管理员打开修改系统配置文件,不用sudo 不能修改。
#1本地hosts文件
sudo vim /etc/hosts
#2 用户下的环境变量
echo $PATH 查看环境变量 //echo 打印 ;$:表示变量
sudo vi /users/baota/.bash_profile
source ./.bash_profile //改完运行一下,配置直接生效