tulip notes
首页
  • 学习笔记

    • 《Vue》
  • 踩坑日记

    • JavaScript
  • MQ
  • Nginx
  • IdentityServer
  • Redis
  • Linux
  • Java
  • SpringBoot
  • SpringCloud
  • MySql
  • docker
  • 算法与设计模式
  • 踩坑与提升
  • Git
  • GitHub技巧
  • Mac
  • 网络
  • 项目构建合集
  • 一些技巧
  • 面试
  • 一些杂货
  • 友情链接
  • 项目发布
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Star-Lord

希望一天成为大师的学徒
首页
  • 学习笔记

    • 《Vue》
  • 踩坑日记

    • JavaScript
  • MQ
  • Nginx
  • IdentityServer
  • Redis
  • Linux
  • Java
  • SpringBoot
  • SpringCloud
  • MySql
  • docker
  • 算法与设计模式
  • 踩坑与提升
  • Git
  • GitHub技巧
  • Mac
  • 网络
  • 项目构建合集
  • 一些技巧
  • 面试
  • 一些杂货
  • 友情链接
  • 项目发布
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 各种MQ

  • Nginx

  • IdentityServer

  • Redis

  • Linux

    • Linux简介
    • Linux中一些常用命令
    • Linux中的文件复制与查找
    • 初识shell
    • shell-续与查看文件内容
    • 查看进程与shell
    • 查找数据与压缩
    • 再探shell
    • Linux系统中各个文件的作用
    • 【开发常用】Java开发必看
      • 文件查找相关
        • 通过名称
        • 根据内容
      • 程序相关
        • 查看指定程序
        • 查看并高亮指定程序
        • 强制终止程序
      • 文件操作
        • 复制文件
        • 移动文件
      • Java程序相关
        • 发布程序
        • 指定内存大小发布项目
        • 查看项目日志
      • 扩展资料
    • 【开发常用】软件安装利器
  • 中间件
  • Linux
EffectTang
2024-11-23
目录

【开发常用】Java开发必看

# 【开发常用】Java开发必看

# 文件查找相关

# 通过名称

find / -name filename.txt 
1

根据名称查找/目录下的filename.txt文件。

find . -name "*.xml"
1

递归查找所有的xml文件

# 根据内容

grep -Hn 'spring' *.xml 
1

用于在当前目录下搜索所有扩展名为 .xml 的文件,并查找包含字符串 spring 的,-n,表示显示行号。

执行过程

  1. 匹配文件:*.xml 会匹配当前目录下所有扩展名为 .xml 的文件。
  2. 搜索内容:grep 会在每个匹配的文件中搜索包含 spring 的行。
  3. 输出结果:对于每个匹配的行,grep 会输出文件名和该行的内容。文件名和行内容之间通常用冒号 : 分隔。

扩展

  • -H:这个选项强制 grep 在输出中显示文件名。即使只有一个文件被搜索,文件名也会显示在匹配的行前面。
grep -rH 'spring' /path/to/directory --include=*.xml
1

如果您想在特定目录中执行 grep 命令,可以使用 -r 或 -R 选项来递归搜索该目录中的所有文件。

grep 'test' d* 
1

显示所有以d开头的文件中包含test的行。

grep '[a-z]\{5\}' aa 
1

命令用于在文件 aa 中搜索包含恰好 5 个小写字母的单词。

# 程序相关

# 查看指定程序

ps –ef|grep java 
1

查看所有有关java的进程

注意:当你运行 ps -ef | grep java 时,grep 命令本身也会出现在 ps -ef 的输出中,因为它也是一个正在运行的进程。grep 命令的行会包含 java 关键字,因此会被 grep 自身捕获。

所以,即使没有java进程,使用该命令后,仍会显示有一个java进程。

如果你想避免上述情况,可以使用如下命令:

ps -ef|grep [j]ava
1

这里的 [j]ava 是一个正则表达式,表示匹配 java,但不匹配 grep 命令本身。grep 会将 [j]ava 解释为 java,但 grep 命令本身不会包含 [j]ava,因此不会被匹配到。

ps -ef:

  • ps 是一个用于显示当前进程状态的命令。
  • -e 选项表示显示所有进程。
  • -f 选项表示使用全格式输出,包括用户 ID、进程 ID、父进程 ID、CPU 使用率、内存使用率等详细信息。

grep java:

  • grep 是一个用于在文本中搜索指定模式的工具。
  • java 是要搜索的模式,表示查找包含 java 的行。

# 查看并高亮指定程序

ps -ef|grep --color java 
1

高亮要查询的关键字,这里为java,不过如今,有些工具会自动高亮

# 强制终止程序

kill -9 19979 
1

强制终止线程号位19979的进程

# 文件操作

# 复制文件

cp source dest
1

复制文件

cp -r sourceFolder targetFolder 
1

递归复制整个文件夹

# 移动文件

mv /temp/movefile /targetFolder
1

# Java程序相关

# 发布程序

nohup java -jar /path/to/deploy/myapp.jar > /path/to/deploy/myapp.log 2>&1 &
1

在后台运行 Java 应用程序,并将标准输出和标准错误输出重定向到同一个日志文件。

nohup:nohup 使进程在用户注销后继续运行。如果没有指定输出文件,nohup 会将输出重定向到 nohup.out 文件。

java -jar /path/to/deploy/myapp.jar:运行指定的 jar 文件。

> /path/to/deploy/myapp.log:将标准输出(stdout)重定向到 /path/to/deploy/myapp.log 文件。

2>&1:将标准错误(stderr)重定向到标准输出(stdout),从而将标准输出和标准错误都重定向到同一个文件 /path/to/deploy/myapp.log`。

&:将命令放在后台运行,使终端可以继续接受其他命令。

使用以上命令,有个前提,你需要安装java环境,毕竟你使用的是java

# 指定内存大小发布项目

常用的 JVM 内存参数

  1. -Xms:设置初始堆内存大小。
  2. -Xmx:设置最大堆内存大小。
  3. -Xss:设置每个线程的堆栈大小。
java -Xms512m -Xmx1g -Xss1m -jar /path/to/deploy/myapp.jar
1

设置初始堆内存为 512MB,最大堆内存为 1GB,并将每个线程的堆栈大小设置为 1MB,可以使用以上命令。

# 查看项目日志

实际工作中,其实有些文件我们只需要看最近的一部分内容即可(如果内容按照时间排序,比如日志),我们只需要看该文件的尾部那部分。

tailf app.xml
1

实时查看文件的最新内容,类似于 tail -f 命令,显示文件的最后几行(通常是 10 行)

  • tailf 是一个命令,用于实时显示文件的最新内容。它会持续监控文件的变化,并在文件内容更新时立即显示新的行。

  • tailf 实际上是 tail -f 的别名,两者功能相同。

tail -f -n 20 application.xml
1

实时显示文件的最后 20 行。

要停止 tailf 或 tail -f,可以按 Ctrl + C 终止命令。

grep '20' app.xml |grep 'spring'
1

用于在 app.xml 文件中查找同时包含 20 和 spring 的行

grep -C 3 'spring' app.xml
1

查找包含指定模式的行,并显示该行及其上下文行。-C 选项指定了要显示的上下文行数

查找包含 spring 的行,并显示每行前后各三行的上下文

# 扩展资料

linux命令学习网站-explainshell (opens new window)

上次更新: 2025/04/23, 16:23:16
Linux系统中各个文件的作用
【开发常用】软件安装利器

← Linux系统中各个文件的作用 【开发常用】软件安装利器→

最近更新
01
面向切面跟自定义注解的结合
05-22
02
时间跟其他数据的序列化
05-19
03
数据加密与安全
05-17
更多文章>
Theme by Vdoing | Copyright © 2023-2025 EffectTang
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式