比较常用的一些命令,以防自己忘记
打印日志:
tail -400f demo.log #监控最后400行日志文件的变化 等价与 tail -n 400 -f (-f参数是实时)
less demo.log #查看日志文件,支持上下滚屏,查找功能
uniq -c demo.log #标记该行重复的数量,不重复值为1
$grep -5 'parttern' inputfile //打印匹配行的前后5行
$grep -C 5 'parttern' inputfile //打印匹配行的前后5行
$grep -A 5 'parttern' inputfile //打印匹配行的后5行
$grep -B 5 'parttern' inputfile //打印匹配行的前5行
数据库修改
Alter table add column_name type; //添加属性
Alter table alter column column_name datatype//修改
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;
update `fsc_dealer_trade_stat_info` A,`fsc_dealer_access` B set A.`shop_code`=B.`shop_code`where A.`access_id`=B.`access_id`
maven
maven clean install 编译项目
maven clean install -Dmaven.test.skip=true 跳过测试代码
git
git reset HEAD readme.txt 清空暂存区
Git checkout —HEAD file 清空工作区
git checkout -b some-feature develop 新建一个本地分支从develop
git push origin HEAD –force #远程提交回退
git stash //暂存修改工作区
git pull //拉取远端文件
git stash pop stash@{0} //将工作区还原
shell
lsof -i:1099 查看1099端口的内容
kill -9 12345 强制关掉12345端口
∗与
∗
与
@ 区别:
- 相同点:都是引用所有参数。
- 不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 ” * ” 等价于 “1 2 3”(传递了一个参数),而 “@” 等价于 “1” “2” “3”(传递了三个参数)。
java
jmap -heap 端口
linux 命令
- control+a 移动到行首
- control+e 移动到行位
- control+u 删除一行
- control+k 删除光标到行尾
- control+w 删除光标到单词首
恢复文件 vi -r {your file name}
make
- make install
- ln -s [][]
- tar xzf 解压文件
wget url 从稳定下载
grep java -rl /Users/lkj41110/Desktop/*java.xml|xargs 查询
- sed -i ” “s/java/hahaha/g” [文件名] 批量替换
- scp -r cmd.txt computer@10.0.0.522:/home/hello/ 远程获取文件(是基于ssh安全的下载文件)
- du 查看文件大小
- ps -e|grep tomcat 查询进程
vim命令
移动
- 0移动到该行的最前面
- $移动到改行的最后面
- 数字+G移动到相应的行,例如10G移动到第10行
- G移动到到文件的最后,gg移动到文件的最前面,也可以用1G
- H移动到当前页面的最第一行,M移动到当前页的最中间行,
添加
- I在当行首部插入,A在当行尾部插入
- i在光标的前面插入,a在光标后面插入
- o在下面一行插新起并插入,O在上面一行新起并插入
撤销
- u撤销刚刚的操作
删除
- x删除光标的数据
- dd删除当前行的数据
拷贝
- yy拷贝当前行