1、ll
linux下命令“ll”是“ls -l"的别名,别名就相当于是windows里的快捷方式
所以"ll"和“ls -l”的功能是相同的
所以"ll"和"ls"的区别其实是“ls”和"ls -l"的区别
”ls“是显示当前目录下文件
”ls -l“是显示当前目录下文件详细信息(ll)
2、cd切换目录
3、pwd 命令用于显示当前工作目录
4、Vim 日志名 查询日志
4-1、:q! 退出
4-2、shift N倒着看 ,向上走 shift 正着看 向下
5、备份日志
5-1、cp catalina.out /当前目录/新的日志名; 复制日志
5-3、rm 日志名; 删除日志
5-2、touch 日志名 ;新建日志(eg:touch catalina.out )
6、cd .. 回到上一级目录 cd 回到根目录
7、重启tomcat
7-1、java –version 先查询java版本
7-2 source /home/work/.jumbo/opt/sun-java8/sun-java8.sh 变为1.8版本
7-3 cd ..
7-4 cd /home/work/apache_jypt/apache-tomcat-8.0.52/bin 进入bin目录 重启tomcat
7-5、sh ./shutdown.sh 关闭
7-6 sh ./startup.sh 重启tomacat
8、Ctrl+c,Ctrl+d,Ctrl+z在Linux中意义
Ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.
Ctrl+c是强制中断程序的执行。
Ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态。
9、tail -f a.txt :Head/Tail日志的开头与结尾
1)displays the first 6 lines of a file 前6行 eg:head -6 readme.txt
2)displays the last 25 lines of a file 后25行 eg :tail -25 mail.txt
3)head -20 file | tail -10 11到20行
- 解压缩:tar -zxvf XXX.tar.gz
- 压缩conf文件夹:tar -czvf conf.tar.gz /home/work/orp/conf/
- 删除文件:rm conf.tar.gz
- 上传文件:rz+回车
- 下载文件:sz conf.tar.gz
- 创建多层文件夹:mkdir -p crm_qatest/crm_audit
- 创建单个文件夹:mkdir crm_qatest
- diff case0 case8 > 0vs8
1.chmod777 文件名 改变读写权限 r :读 4 w:写2 x:可执行 1
改宿主。
【sudo chown 用户名:用户组 ./目录/*】
改权限
【 sudo chmod -R 775 ./目录】
例1:把文件yusi123.com的所有者改为yusi。
- $ chown yusi yusi123.com
例2:把目录/demo及其下的所有文件和子目录的属主改成yusi,属组改成users。
- $ chown - R yusi.users /demo
2.find . -name "文件" 查询当前目录下的文件 文件不明确使用通配符find . -name "*libc*"
3.cp catalina.out /当前目录下/新的文件名 eg: cp catalina.out catalina.out.bak 复制新的文件并且重命名 ;新建日志:touch 文件名
4、 du -h --max-depth=1 机器打满之后查询占用内存
5. hostname -i ip地址的查询
6. ps -ef|grep tomcat 查询tomact 是否为启用的状态 https://www.cnblogs.com/Rozdy/p/4619190.html https://blog.51cto.com/4923168/2177178
7 sed -i 's/1/2/g' 将1的内容替换为2?(全局替换) sed -i '111s/1/2/g' 将1的内容替换为2 (将111行内容替换) https://www.cnblogs.com/maxincai/p/5146338.html
:%s/name/ssss/g 将name替换为ssss
8、find . -name "文件" 查询当前目录下的文件 如果不明确文件名称,可以使用通配符find
. -name "*libc*"
9. redis的删除 zrem KEY_MKT_PRE_COMPLETE_task_zset value (set、get、del)
- 在Redis中查看前一百条数据:lrange cmdm_getshowrate 0 100
- 在Redis中查看最后一百条数据:lrange cmdm_getshowrate -100 -1
- 登录Redis:redis-cli -h 10.94.20.24 -p 8480
10.文件批量导入数据库
登录服务器 --> 上传下载好的sql文件(rd给的,在机器的家目录直接使用命令:rz -bey)→上传成功后在mysql 执行命令source /home/work/要执行的sql文件名字
11.crontab –l 查哪那些脚本运行 crontanb –e 编辑脚本
12.sudo -iu 使用 root 的身份来运行命令
13.:set nu 非可编辑态下输入 查看行数 :行数d 删除 V 正行选中 Y 复制 P 粘贴
14. diff -r webroot/mis-promotion/ ~/odp-jypt/webroot/mis-promotion/
15. vim 编辑器中的命令:%代表全局
16.跨机器拷贝文件:
①将本地文件拷贝到远端主机上
scp 待拷贝的文件 远端主机用户名@远端主机IP地址:要拷贝远端主机的目录
eg. scp a.txt root@192.90.152.32:/home/test 将本地Linux主机上的a.txt文件拷贝到远端主机192.90.152.32的test目录下
②将远端主机上的文件拷贝到本地
scp 远端主机用户名@远端主机IP地址:待拷贝的文件 要拷贝到本地的目录
eg.scp root@192.90.152.32:/home/test/b.txt /home/wang 将远端主机test目录下的b.txt文件拷贝到本地主机wang目录下
eg:将64机器的文件拷贝到smoke机器
scp work@cp01-ra09-jueheng2qa064.cp01.baidu.com:/home/work/crm/odp_pmdm_auto/pmdm.tar.gz .
yes 64机器密码
17.只导出表结构:
mysqldump --opt -d -h10.95.117.34 -P8306 -uroot -p123456 --default-character-set=utf8 fpd_ftrans t_price_code> /home/work/wuxingyao/fpd_ftrans.sql
18.导出表结构和数据:
mysqldump -h10.95.117.34 -P8306 -uroot -p123456 --default-character-set=utf8 fpd_ftrans> /home/work/wuxingyao/fpd_ftrans.sql
19.查看当前的文件并且追加到新的文件 cat * > all.txt
20.拉取线上日志:pdo2 -a cmdm -y -o /home/rd/zhouxinxin "grep 2514237249 | grep 'violatePrepay' log/cmdm/cmdm.log.20191211*"
21.单实例捞取日志:cat cmdm.log.2019012414|grep -a getshowrate |grep -a "14:1"|grep -v -a '14:11'|grep -v -a '14:12'|grep -v -a '14:13'|grep -v -a '14:14'|grep -v -a '14:15'|grep -v -a '14:16' >/tmp/1024.txt
ll -lh /tmp/1024.txt
sz /tmp/1024.txt
awk -F: '$1~/mail/ && $3>8 {print }' /etc/passwd //逻辑与,$1匹配mail,并且$3>8
22.从filename 文件以TIMER_Action_GetValidRepaymentTypes作为分隔符,取第一列并且追加到新文件validrepaymenttypes_params.txt :awk -F "TIMER_Action_GetValidRepaymentTypes" '{print $1}' filename >validrepaymenttypes_params.txt
23.清空日志:echo ''>日志名
OR操作符
1、使用 \|
如果不使用grep命令的任何选项,可以通过使用 '\|' 来分割多个pattern,以此实现OR的操作
例:grep 'pattern1\|pattern2' filename
2、grep -E 选项可以用来扩展选项为正则表达式。 如果使用了grep 命令的选项-E,则应该使用 | 来分割多个pattern,以此实现OR操作
例:grep -E 'pattern1|pattern2' filename
3、egrep 命令等同于‘grep -E’。因此,使用egrep (不带任何选项)命令,以此根据分割的多个Pattern来实现OR操作.
例:pdo2 -a cmdm -y 'cat log/cmdm/cmdm.log.2018080801 |egrep "Action_GetShowRate.*\\\\\"errno\\\\\":[^0]"|grep -v "JXJ002"'
4、使用选项 -e
使用grep -e 选项,只能传递一个参数。在单条命令中使用多个 -e 选项,得到多个pattern,以此实现OR操作。
例:grep -e pattern1 -e pattern2 filename
grep AND操作:grep命令本身不提供AND功能。但是,使用 -E 选项可以实现AND操作。
1、使用 -E 'pattern1.*pattern2'
例:(1)grep -E 'pattern1.*pattern2' filename 其中两个pattern的顺序是指定的
(2)grep -E 'pattern1.*pattern2|pattern2.*pattern1' filename 两个pattern的顺序不是固定的,可以是乱序的
2、可以使用多个 grep 命令 ,由管道符分割,以此来实现 AND 语义。
例:grep -E 'pattern1' filename | grep -E 'pattern2'
grep NOT操作
1、使用选项 grep -v
使用 grep -v 可以实现 NOT 操作。 -v 选项用来实现反选匹配的( invert match)。
例:grep -v 'JXJ002' 排除JXJ002