最近才开始学习linux相关知识和服务器jar更新,有想要一起学习的可以私信
清屏clear 命令记录history 检查java运行进程 ps -ef |grep java(查所有运行中的java进程) ps -ef |grep 端口号(指定查正在运行的端口号) ps -ef |grep xxx.jar(指定查正在运行的jar) ps aux|grep xxx.jar(指定查正在运行的jar)
杀掉通过pid进程 kill -9 pid 查看指定端口(普通用户操作netstat前面需要加sudo) netstat -anp |grep 端口号 查看指定jar ps -ef |grep $APP_NAME|grep -v grep|cut -c 9-15 losf -i:端口号 查看所有端口
netstat -nultp(不需要加端口)
查看文件的内容日志 tail -f 日志名 实时更新 grep 需要查询的字符串 日志名 (会高亮显示查询的字符串) cat 日志名 tac 日志名(倒查)
grep必备选项命令 #grep -i root passwd 忽略大小写匹配包含root行 #grep -w ftp passwd 精准匹配ftp单词 #grep -wo ftp passwd 打印匹配到的关键字ftp #grep -n root passwd 打印匹配到root关键字的行号 #grep -ni root passwd 忽略大小写匹配统计包含关键字root的行号 #grep -nic root passwd 忽略大小写匹配统计包含关键字root的行数 #grep -i ^root passwd 忽略大小写匹配以root开头的行 #grep bash$ passwd 匹配以bash结尾的行 #grep -n ^$ passwd 匹配空行并打印行号 #grep ^# /etc/vsftpd/vsftpd.conf 匹配以#号开头的行 #grep -v ^# /etc/vsftpd/vsftpd.conf 匹配不以#号开头的行 #grep -A 5 mail passwd 匹配包含mail关键字及其后5行 #grep -B 5 mail passwd 匹配包含mail关键字及其前5行 #grep -C 5 mail passwd 匹配包含mail关键字及其前后5行
查看日志中指定字符串(grep 命令用于查找文件里符合条件的字符串) tail -10(打印最后10行) 日志名 |grep 查询字符串
cut数据截取 #cut -d: -f1 文件名 以:冒号分割,-f1截取第一列内容 #cut -d: -f1,6,7 文件名 以:冒号分割,截取第1,6,7列内容 #cut -c4 文件名 截取文件中每行第4个字符 #cut -c1-4 文件名 截取文件中每行1-4个字符 #cut -c4-10 文件名 截取从文件每行第4个截取到第10个字符 #cut -c5- 文件名 从第5个字符开始截取后面所有字符
查看日志指定时间命令 sed -n ‘/起始时间/,/结束时间/p’ 日志文件 例如,sed -n ‘/2018-04-08 16:00:00/,/2018-04-08 15:00:00/p’ 日志名.log 指定命令: grep ‘2018-11-27 时:2[2-4](说明22分-24分之间的日志)’ 日志名.log
jar启动不挂断命令。退出账户或者关闭终端仍运行 nohup java -jar xxxx.jar & (日志不指定默认重定向到nohup.out文件) nohup java -jar xxxx.jar > xxx.log &(指定重定向输出日志文件)
相关服务启动停止 eureka服务启动 进入目录找到eureka服务的jar包 nohup java -jar target/springcloud-eureka.jar &
运行后使用命令即可看到linux上运行的java程序: jps
查看状态 ps -ef |grep eureka ps -ef |grep java -c 查进程个数
删除指定的文件 rm -rf 文件名
创建文件 mkdir 文件名
文件复制 cp -ri 原路径/文件名 目标路径 移动文件到指定目录,进入需要移动文件的目录(/为根目录) mv -i 文件名 /目标路径,文件移动后原目录下就不存在了 -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作 -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。 -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。 -n: 不要覆盖任何已存在的文件或目录。 -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作
解压tar命令 tar zxvf 文件名.tar 压缩tar命令 tar czvf 文件名.tar 目录名 解压zip命令 unzip 文件名.zip 压缩zip命令 zip 文件名.zip 目录名 [root@iZ2ze51kjhno699a0q9fzbZ shops]# zip testdelanddir.zip testdelanddir/
搜索查看安装路径 [root@iZ2ze51kjhno699a0q9fzbZ bin]# ls -lrt /usr/bin/java lrwxrwxrwx 1 root root 22 Nov 24 14:29 /usr/bin/java -> /etc/alternatives/java [root@iZ2ze51kjhno699a0q9fzbZ bin]# ls -lrt /etc/alternatives/java lrwxrwxrwx 1 root root 73 Nov 24 14:29 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.1.al7.x86_64/jre/bin/java
jar单独文件替换(https://blog.csdn.net/weixin_35982425/article/details/88241192) 更新服务器上运行包prs-0.0.1-SNAPSHOT.jar里面的文件步骤:
1、进到prs-0.0.1-SNAPSHOT.jar所在目录:
2、先查询jar包中需要更新替换的文件的路径,即所在位置。命令如下: jar tvf prs-0.0.1-SNAPSHOT.jar | grep 文件名 例如:jar tvf prs-0.0.1-SNAPSHOT.jar | grep TaskService.class
3、将需要替换的目标文件解压出来: jar -xvf prs-0.0.1-SNAPSHOT.jar 路径 例如:jar -xvf prs-0.0.1-SNAPSHOT.jar BOOT-INF/classes/com/thsoft/prs/service/TaskService.class
4、cp 文件名 路径 cp TaskService.class BOOT-INF/classes/com/thsoft/prs/service/
5、压缩 zip -u prs-0.0.1-SNAPSHOT.jar BOOT-INF/classes/com/thsoft/prs/service/TaskService.class
以上针对的是单个文件,下面是对整个文件夹进行更新:
1、进到prs-0.0.1-SNAPSHOT.jar所在目录:
2、先查询jar包中需要更新替换的文件夹的路径,即所在位置。命令如下: jar tvf prs-0.0.1-SNAPSHOT.jar | grep 文件夹名 例如:jar tvf prs-0.0.1-SNAPSHOT.jar | grep templates
3、将需要替换的目标文件夹解压出来: jar -xvf prs-0.0.1-SNAPSHOT.jar 路径 例如:jar -xvf prs-0.0.1-SNAPSHOT.jar BOOT-INF/classes/templates
4、cp 新的文件夹名 路径。 (如果提示是否覆盖里面的文件的话,输入y,按下回车即可) cp -ri templates BOOT-INF/classes/
5、压缩 zip -ur prs-0.0.1-SNAPSHOT.jar BOOT-INF/classes/templates
查找48小时内修改过的文件 find -atime -2
vim&vi编辑完成退出 :w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
:q 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
docker命令 docker images已经安装的查看镜像 docker ps 查看运行 docker rm 通过id删除容器中的镜像 docker rmi 通过ID删除镜像 docker run -d -it --name ***别名 ***要启动的镜像名 docker stop 名字,停止正在运行镜像
|