shell脚本启动

本文介绍了一个使用Shell脚本实现的简单进程管理系统。该系统能够启动、停止和重启两个不同的后台守护进程:process和transcode。通过调用ps、grep、nohup等命令组合实现了进程的状态检查和控制。
#/usr/bin/sh

function proc_start(){
    PROC_NAME="/home/work/athena_job/webroot/index.php job $1 daemon"
    NUM=`ps -ef | grep "$PROC_NAME" | egrep -v grep | wc -l`
    if [ $NUM -gt 0 ]
    then
        printf "$1 ALREADY STARTED \n";
        return 1
    fi
    nohup /home/work/athena_job/php/bin/php /home/work/athena_job/webroot/index.php job $1 daemon  > /dev/null 2>&1 &
    printf "$1 STARTED \n"
    return 1
}
function proc_stop(){
    PROC_NAME="/home/work/athena_job/webroot/index.php job $1 daemon"
    NUM=`ps -ef | grep "$PROC_NAME" | egrep -v grep | wc -l`
    if [ $NUM == 0 ]
    then
        printf "$1 ALREADY STOPED \n";
        return 1
    fi
    ps -ef | grep "$PROC_NAME" | egrep -v grep | awk '{print $2}' | xargs kill -9 
    printf "$1 STOPED \n"
    return 1
}
#nohup python src/$PROC_NAME > /dev/null 2>&1 &
case $1 in 
    'start')
        proc_start "process" 
        proc_start "transcode"
        ;;
    'stop')
        proc_stop "process"
        proc_stop "transcode"
        ;;
    'restart')
        proc_stop "process"
        proc_stop "transcode"
        proc_start "process"
        proc_start "transcode"
        ;;
    *)
        ps -ef | grep "/home/work/athena_job/webroot/index.php job process daemon" | egrep -v grep
        ps -ef | grep "/home/work/athena_job/webroot/index.php job transcode daemon" | egrep -v grep
        ;;
esac

### 回答1: shell脚本启动命令可以使用以下方式: 1. 直接在终端中输入脚本文件的路径和文件名,例如:/home/user/test.sh 2. 使用bash命令来执行脚本文件,例如:bash /home/user/test.sh 3. 将脚本文件添加可执行权限,然后直接执行文件,例如:chmod +x /home/user/test.sh,然后./test.sh 4. 在脚本文件的第一行添加#!/bin/bash,表示使用bash来执行脚本文件,然后将文件添加可执行权限,例如:chmod +x /home/user/test.sh,然后直接执行文件,例如:/home/user/test.sh ### 回答2: shell脚本是一种简单但实用的编程语言,它可以用来自动化和简化Linux系统管理中的一些常见任务。自动化这些任务可以大大节省时间和精力。在Linux中,启动shell脚本的方式有多种,本文将介绍其中一些。 1. 使用bash命令来执行shell脚本 Bash是Linux系统中最常用的shell,也是默认的命令行解释器。可以使用以下命令来执行脚本: ```bash script.sh``` 其中,script.sh是你想要执行的shell脚本的文件名。 2. 使用sh命令来执行shell脚本 sh命令也是执行shell脚本的另一种常见方式。可以使用以下命令来执行脚本: ```sh script.sh``` 和前面一种方式类似,这里的script.sh是你想要执行的shell脚本的文件名。 3. 使用./命令来执行shell脚本 在Linux中,可以通过把shell脚本文件设置为可执行的,从而可以直接用./命令来执行脚本,例如: ```chmod +x script.sh``` #使用chmod命令设置可执行权限 ```./script.sh``` 这里的```chmod +x script.sh```命令将script.sh文件设置为可执行的,然后可以用./命令来执行脚本。 4. 使用source命令来执行shell脚本 使用source命令可以在当前shell进程中执行脚本,而不是启动一个新的进程。这种方式在需要将脚本中定义的变量或函数在当前shell中保留的情况下比较有用。例如: ```source script.sh``` 这里的script.sh是你想要执行的脚本文件名。 总结: 以上是Linux系统中启动shell脚本的一些常见方式。这些命令的选择将根据你个人的喜好来决定,但最重要的是,能够根据需要自动化执行不同的任务,从而提高效率和减少错误,这就是使用shell脚本的主要目的。 ### 回答3: 在Unix/Linux操作系统中,Shell是一种命令行解释器,用于解释执行用户在命令行输入的指令。Shell脚本是一组Shell命令的集合,采用文本方式编写的脚本程序,可以对系统进行一些自动化操作。 要运行Shell脚本,可以通过以下几种方式: 1. chmod命令: 可以使用chmod命令给Shell脚本添加执行权限,例如: chmod +x script.sh 上述命令将script.sh文件的执行权限加上,使其可以成为可执行文件。然后在终端输入./script.sh运行脚本即可。 2. 直接调用解释器: Shell脚本的第一行必须是指定解释器的命令,例如: #!/bin/bash 上述命令指定了使用bash解释器。在终端中输入以下命令: bash script.sh 或者 ./script.sh 如果已经给脚本添加了执行权限的话。 3. 利用其他程序调用: 有些程序(如cron)可以在指定时间运行Shell脚本,此外,还可以在其他Shell脚本中调用Shell脚本,例如: # 调用script.sh脚本 sh script.sh 总之,Shell脚本启动命令有多种方式,具体选择哪种方式取决于实际情况,一般情况下我们会使用chmod给脚本添加执行权限,并在终端中运行脚本
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值