在CentOS上运行程序的方法有多种,具体取决于程序的类型和需求,以下将详细介绍几种常见的方法:
直接执行可执行文件
当您已经拥有一个可执行文件时,可以直接在终端中执行该文件,使用cd
命令切换到可执行文件所在的目录,然后使用./
命令加上可执行文件的名称执行该文件,如果可执行文件的名称为myprogram
,可以使用以下命令来执行该文件:
cd /path/to/myprogram ./myprogram
这样就可以运行您的程序了。
使用绝对路径运行程序
如果您知道程序的绝对路径,可以直接使用绝对路径来运行程序,如果您的程序位于/usr/bin
目录下,可以使用以下命令来运行程序:
/usr/bin/myprogram
这样就可以通过指定绝对路径来运行程序。
使用环境变量运行程序
在CentOS中,可以通过配置环境变量来简化程序的运行,使用export
命令将程序所在目录添加到PATH
环境变量中,然后就可以直接使用程序名称来运行程序了,如果您将程序所在目录/path/to/myprogram
添加到了PATH
环境变量中,可以使用以下命令来运行程序:
export PATH=$PATH:/path/to/myprogram myprogram
这样就可以直接通过程序名称来运行程序了。
使用命令搜索路径运行程序
在CentOS中,系统会根据一定的搜索路径来查找可执行文件,可以使用which
命令来查看系统搜索路径中是否存在某个程序,并使用该路径来运行程序,使用以下命令来查看myprogram
的路径:
which myprogram
然后可以使用该路径来运行程序:
/path/to/myprogram
这样就可以通过命令搜索路径来运行程序了。
后台运行和关闭、查看后台任务命令
(1)后台运行
&:加在一个命令的最后,可以把这个命令放到后台执行。
watch n 10 sh test.sh & #每10s在后台执行一次test.sh脚本
nohup:如果让程序始终在后台执行,即使关闭当前的终端也执行(之前的&
做不到),这时候需要nohup
。
nohup java jar verification0.0.1SNAPSHOT.jar >consoleMsg.log 2>&1 &
这将标准输出和标准错误重定向至consoleMsg.log
文件。
(2)暂停和恢复后台任务
ctrl + z:可以将一个正在前台执行的命令放到后台,并且处于暂停状态。
fg:将后台中的命令调至前台继续运行,如果有多个后台命令,可以用fg %jobnumber
将选中的命令调出。
bg:将一个在后台暂停的命令,变成在后台继续执行,如果有多个后台命令,可以用bg %jobnumber
将选中的命令调出。
(3)查看和终止后台任务
jobs:查看当前有多少在后台运行的命令,选项l
可显示所有任务的PID,状态可以是running, stopped, Terminated。
kill:终止进程,可以通过jobs
命令查看job号(假设为num),然后执行kill %num
;或者通过ps
命令查看job的进程号(PID,假设为pid),然后执行kill pid
,前台进程的终止可以使用Ctrl+c
。
使用服务运行
对于需要在后台一直运行的程序,可以将其作为服务来运行,创建一个服务脚本,包括程序的启动、停止和重启等功能,保存脚本,并将其拷贝到/etc/init.d/
目录下,使用命令chkconfig add 服务脚本名
将服务添加到系统启动项中,使用命令service 服务脚本名 start
启动服务。
使用daemon运行
对于需要在后台一直运行的程序,可以使用dAEmon来运行,安装daemon软件包(可通过命令yum install daemon
进行安装),创建一个运行程序的脚本,并使用daemon命令来运行该脚本,使用命令daemon /路径/脚本名
来运行程序。
使用脚本运行
对于需要调用其他命令或设置环境变量的程序,可以编写一个脚本来运行程序,创建一个新的文本文件,使用文本编辑器打开,编写脚本,包括需要执行的命令和设置的环境变量,保存文件,并使用命令chmod +x 脚本文件名
赋予脚本执行权限,使用命令./脚本文件名
来运行程序。
CentOS提供了多种运行程序的方法,包括直接执行可执行文件、使用绝对路径、环境变量、命令搜索路径、后台运行、服务运行以及脚本运行等,这些方法可以根据不同的需求和场景灵活选择和使用。