背景:
由于上个同事没有交接清楚,发现机器上有很多路径下含有nginx,系统service也配置了nginx,但是使用系统配置的service nginx status是stop状态,实际有nginx进程在执行,需要定位到该进程所启动的nginx位置。
解决方案:
1.先使用ps查询出nginx的进程号此处记为PID
2.使用ll /proc/PID
3.查看cwd或者exe后的 ->指向的路径就是该进程对应的应用程序路径
1、使用find命令
Linuxfind命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录或文件。并且将查找到的子目录和文件全部进行显示。
语法:find path -option [ -print ] [ -exec -ok command ] {} \
2、使用locate命令
Linux locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。
一般情况我们只需要输入locate your_file_name即可查找指定文件。
语法:locate [-d ][--help][--version][范本样式...]
3、使用which命令
Linux which命令用于查找文件。
which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
语法:which [文件...]
4、使用whereis命令
Linux whereis命令用于查找文件。
该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。
语法:whereis [-bfmsu][-B <目录>...][-M <目录>...][-S<目录>...][文件...]
指的是环境变量:dingran@ubuntu:~$
echo
$PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
dingran@ubuntu:~$
which
ls
/bin/ls
在输入一些命令时,如果没有给出命令的路径,系统则到PATH变量指定的路径下找,按照PATH
变量里的顺序(冒号:是路径分隔符),如果想让你自己的程序运行时无需输入路径名,可以将你程序的目录添加到PATH变量中,修改如下:
用root用户进,编辑.bashrc
vi
~/.bashrc
加入
set
PATH=$PATH:dir(dir为你要添加的目录)
export
PATH
保存退出
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)