个人收集的一些适用于初入职场或入坑新人们的linux命令(持续更新)

ps -ef | grep java

ps -ef | grep java 是一个在 Unix 和类 Unix 系统(如 Linux)中常用的命令组合,用于查找与 Java 相关的进程。这个命令组合由两部分组成:ps -ef 和 grep java。

ps -ef:
ps 是一个显示当前系统中进程信息的命令。
-e 选项告诉 ps 显示所有进程的信息,而不仅仅是当前 shell 会话的进程。
-f 选项提供了更完整的格式输出,通常包括 UID、PID、PPID、C、STIME、TTY、TIME 和 CMD 等字段。
|:
这是一个管道符号,用于将一个命令的输出作为另一个命令的输入。
grep java:
grep 是一个强大的文本搜索工具,允许你在文本中搜索指定的模式。
在这里,grep 用于搜索包含 “java” 的行,即查找与 Java 相关的进程。
所以,当你运行 ps -ef | grep java 时,你会看到所有包含 “java” 的进程信息。这通常用于确定 Java 应用程序是否正在运行,或者查看与 Java 相关的特定进程的详细信息。

注意:由于 grep java 命令本身也会作为一个进程运行,并且其命令行参数中包含 “java”,因此 ps -ef | grep java 的输出中通常会包含 grep java 这一行。如果你只想看到与 Java 应用程序相关的进程,而不是 grep 命令本身,你可以使用 ps -ef | grep java | grep -v grep。这里的 grep -v grep 会排除包含 “grep” 的行。


ps -aux | grep java

-a 选项显示当前终端下的所有进程信息,包括其他用户的进程。
-u 选项显示用户/所有者信息。
-x 选项显示没有控制终端的进程。这通常意味着你会看到所有的进程,包括守护进程和其他非终端相关的进程。

其余同上,多用于查看其它用户进程


su app

su app 这个命令在 Unix 和类 Unix 系统中通常用于尝试切换到名为 app 的用户。su 是 “switch user” 的缩写,它允许一个用户以另一个用户的身份运行命令。

但是,直接使用 su app 通常会提示你输入 app 用户的密码(如果 app 用户设置了密码的话)。如果 app 用户没有设置密码,或者出于某种安全策略(例如 sudoers 配置)不允许直接使用 su 命令,这个命令可能会失败。

在一些系统中,为了安全起见,可能不允许直接使用 su 命令切换到其他用户,而是使用 sudo 命令。sudo 允许授权用户以其他用户(通常是 root)的身份执行命令,但它会记录每个命令,并提供了一种更细粒度的权限控制机制。

如果你想要以 app 用户的身份执行命令,但 app 用户没有密码或者你不能使用 su 命令,你可能需要查看是否有 sudo 规则允许你这样做。例如,你可以尝试:

sudo -u app some_command

这将以 app 用户的身份执行 some_command 命令,但你需要有适当的 sudo 权限才能这样做。

如果你只是想查看 app 用户正在运行的进程,你可以使用 pgrep 或 ps 命令结合 grep 来实现,而不需要切换到该用户。例如:

pgrep -u app  

或者

ps -u app

这些命令将显示 app 用户正在运行的进程的进程 ID 或详细信息。


tail -fn 200 nohup.out

tail -fn 200 nohup.out 是一个在 Unix 和类 Unix 系统中使用的命令,用于查看文件 nohup.out 的最后 200 行,并且会持续跟踪(follow)文件的更新。但是,这里有一个小错误,正确的命令应该是 tail -f -n 200 nohup.out,但通常 tail 命令的 -f 和 -n 选项不会一起这样使用,因为它们的功能有些冲突。

-f 选项:使 tail 命令持续跟踪文件的新增内容。如果文件有新的内容被添加,tail 会立即显示这些新内容。
-n 选项:用于指定显示的行数。例如,-n 200 会显示文件的最后 200 行。
但是,当你同时使用 -f 和 -n 选项时,-n 的效果只会在第一次显示时生效,之后 tail 会持续跟踪文件的新增内容,而不会限制在 200 行。

如果你想先查看 nohup.out 文件的最后 200 行,并且之后持续跟踪文件的新增内容,你可以分两步来做:

首先查看文件的最后 200 行:

tail -n 200 nohup.out

然后,按 Ctrl+C 停止当前的 tail 命令,并启动一个新的 tail 命令来持续跟踪文件的新增内容:

tail -f nohup.out

或者,如果你只是想一步到位,并且只关心文件的新增内容(不限制在 200 行),你可以直接使用:

tail -f nohup.out

如果你确实需要一种方法,既能看到文件的最后 200 行,又能持续跟踪之后的新增内容,并且始终保持在 200 行的显示范围内(即当新内容超过 200 行时,最早的行会被移除),那么你可能需要编写一个脚本来实现这个功能,因为标准的 tail 命令不支持这样的功能。


jps -lm

jps 命令实际上是一个常见的误写或误解。在 Java 的世界里,用于列出 Java 进程的工具是 jps(Java Virtual Machine Process Status Tool)。

jps 命令用于列出当前系统上运行的 Java 虚拟机(JVM)实例及其相关信息。当你想要查看哪个 Java 进程正在运行,或者想要获取这些进程的进程 ID(PID)时,jps 是非常有用的。

-lm 参数在标准的 jps 命令中并不是一个有效的选项。但通常,人们可能会想要使用 -l 和 -m 选项的组合来获取更详细的信息。

-l:输出主类名或 JAR 文件名。
-m:输出传递给 Java 虚拟机的参数。
所以,如果你想要获取 Java 进程的详细信息和传递给它们的参数,你可以使用:

jps -lm

这将会列出所有的 Java 进程,并显示它们的主类名或 JAR 文件名以及传递给 JVM 的参数。

注意:jps 命令是 JDK 的一部分,所以你需要确保你的系统上已经安装了 JDK,并且 jps 命令的路径已经包含在你的环境变量中。


pwd

显示当前路径,对于需要复制路径的操作很常用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值