linux根据服务名称查服务文件夹路径

发布时间:2024年01月16日

ps -ef |grep java| grep -v grep |?awk '{ print $2 }'

-e?? 显示所有进程。
-f??? 全格式。

grep -v grep是在Linux系统的某些时刻下查看进程的命令,它的作用是排除grep进程本身。

启动:

#!/usr/bin/bash
PID=$(ps -ef | grep serverName?| grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ];
then
?? ?echo Application is already stopped
else
?? ?echo kill $PID
?? ?kill -9 $PID
fi

java ?-Xmx4g -Dlog4j.configurationFile=file:log4j2.xml ?-classpath ./xxx.jar com..MainServer /config/xxx.setting $1 &

停止:

1.判断文件夹是否存在

? ?if [ ! -d "$myPath"]; then?

2.判断文件是否存在

? ?if [ ?! -f /tmp/dns.out ] ; then
3.判断字符串是否为空

? ? if [ -z "$pid" ] ; then

4.判断变量值

? ? ?if [ $# -ne 1 ] ; then

5. 判断$myPath是否存在并且是否具有可执行权限?

? ? if [ ! -x "$myPath"]; then?
?

wk会根据空格和制表符,将每一行分成若干字段,依次用$1$2$3代表第一个字段、第二个字段、第三个字段等等。

 echo "i love you" |awk '{print $0}' //打印所有行
 i love you
 echo "i love you" |awk '{print $1}' //打印第一个字段
 i
 echo "i love you" |awk '{print $2}' //打印第二个字段
 love

grep是在Linux系统下常用的文本搜索工具,其全称是Global Regular Expression Print。grep可以查找文本文件中与给定模式匹配的行。

举个例子,假如我们有一个名为test.txt的文本文件,其中内容如下:

hello
world
hello world

如果我们在终端中输入命令:grep "hello" test.txt,则会输出:

hello
hello world

说明grep查询到了其中所有包含“hello”的行。

二、 grep -v的意思

grep命令中有一个选项-v,该选项的功能是反选(不包含)所有包含选定模式的行

假如我们在终端中输入命令:grep -v "hello" test.txt,则会输出:

world

由此可见,选项-v的作用是反选含有模式“hello”的行,只输出不含有该模式的行。

三、 grep -v grep的含义

grep -v grep是在Linux系统的某些时刻下查看进程的命令,它的作用是排除grep进程本身。

通常,我们使用ps命令查看当前运行中的进程,输入命令:ps -ef|grep "ssh"可以查看所有名为ssh的进程。但这个过程中会获得两个结果,其中之一是grep ssh的命令本身的进程,而非真正的ssh进程。如果我们不想要这个结果,就需要加入“grep -v”选项了。

比如我们输入命令:ps -ef|grep "ssh"|grep -v grep,则只会输出真正运行中的ssh进程。

四、 grep -v grep示例代码

下面是一个简单的grep -v grep的示例代码:

ps -ef | grep "ssh" | grep -v grep

上述代码可以查看运行中的所有ssh进程,而排除grep命令本身的进程。

文章来源:https://blog.csdn.net/zyzn1425077119/article/details/135625232
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。