如何让linux一直执行某命令

worktile 其他 29

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要让Linux一直执行某命令,可以使用以下几种方法:

    1. 使用无限循环
    可以使用无限循环来实现让Linux一直执行某命令。可以使用while循环、for循环或者无限循环命令(如`while true`或`for (( ; ; ))`)来实现。例如,要让Linux一直执行`echo “Hello, World!”`命令,可以使用如下命令:

    “`
    while true
    do
    echo “Hello, World!”
    done
    “`

    这样就会不断地输出”Hello, World!”。

    2. 使用定时任务
    可以将命令添加到定时任务(cron job)中,设置一个非常短的时间间隔,让Linux每隔一段时间执行一次该命令。使用`crontab`命令可以编辑定时任务列表。例如,要让Linux每5秒执行一次`echo “Hello, World!”`命令,可以执行以下步骤:

    “`
    crontab -e
    “`

    在打开的编辑器中添加以下内容:

    “`
    */5 * * * * echo “Hello, World!”
    “`

    保存并退出编辑器,这样Linux就会每隔5秒执行一次该命令。

    3. 使用后台进程
    可以将命令放在后台执行,使用`&`符号可以让命令在后台执行。例如,要让Linux一直执行`echo “Hello, World!”`命令,可以使用如下命令:

    “`
    echo “Hello, World!” &
    “`

    这样命令会在后台一直执行,你可以继续使用终端进行其他操作。

    4. 使用守护进程
    使用守护进程(daemon)可以让命令一直在后台执行。可以使用`nohup`命令来启动一个守护进程,并将输出重定向到一个文件中,这样即使终端关闭,命令仍然会继续执行。例如,要让Linux一直执行`echo “Hello, World!”`命令,可以使用如下命令:

    “`
    nohup echo “Hello, World!” > output.txt &
    “`

    这样命令会在后台一直执行,并将输出重定向到`output.txt`文件中。

    以上是几种让Linux一直执行某命令的方法,根据需要选择适合的方法即可。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,有多种方法可以让某个命令一直运行。以下是五种常用的方法:

    1. 使用nohup命令

    nohup命令可以让一个命令在后台一直执行,即使当前的终端会话关闭。可以使用以下命令来运行一个命令,并将输出保存到一个文件中:

    “`
    nohup 命令 > 输出文件 2>&1 &
    “`

    例如,要让`ping`命令一直执行,可以使用以下命令:

    “`
    nohup ping 192.168.0.1 > ping.log 2>&1 &
    “`

    这将会将`ping`命令的输出保存到`ping.log`文件中。

    2. 使用while循环

    另一种方法是使用`while`循环来一直执行某个命令。使用`while true`可以创建一个无限循环,并在循环体中执行需要的命令。例如,要让`ls`命令一直执行,可以使用以下命令:

    “`
    while true; do ls; sleep 1; done
    “`

    这将会每秒钟执行一次`ls`命令。

    3. 使用cron定时任务

    如果需要定期执行某个命令,可以使用cron定时任务。cron是一个常用的任务调度程序,可以让用户在特定的时间间隔内运行特定的命令。可以使用以下命令编辑cron定时任务:

    “`
    crontab -e
    “`

    接着,添加一行类似于以下的内容来定义定时任务:

    “`
    * * * * * 命令
    “`

    其中,`* * * * *`表示每分钟都运行,`命令`是要执行的命令。例如,要每分钟执行一次`ls`命令,可以使用以下内容:

    “`
    * * * * * ls
    “`

    保存并退出文件后,cron将会按照设定的时间间隔自动运行命令。

    4. 使用systemd服务

    如果需要在系统启动时自动执行某个命令,可以使用systemd服务。systemd是Linux系统中的一个初始化系统,可以管理进程和服务。可以创建一个.service文件来定义一个systemd服务,并将要执行的命令添加到其中。以下是一个示例的.service文件内容:

    “`
    [Unit]
    Description=My Command
    After=network.target

    [Service]
    ExecStart=/path/to/command

    [Install]
    WantedBy=default.target
    “`

    将上述内容保存为一个以`.service`为后缀的文件,例如`mycommand.service`,然后使用以下命令将其复制到`/etc/systemd/system/`目录中:

    “`
    sudo cp mycommand.service /etc/systemd/system/
    “`

    接着,可以使用以下命令来启动这个服务:

    “`
    sudo systemctl start mycommand
    “`

    这将会使得命令在系统启动时自动执行。

    5. 使用shell脚本

    最后一种方法是创建一个shell脚本来执行需要的命令,并在需要时手动执行这个脚本或将其添加到系统的自动启动脚本中。可以使用任何文本编辑器创建一个以`.sh`为后缀的文件,然后将要执行的命令添加到其中。例如,创建一个名为`mycommand.sh`的文件,并将以下内容添加到其中:

    “`
    #!/bin/bash
    命令
    “`

    保存并退出文件后,可以使用以下命令来运行这个脚本:

    “`
    bash mycommand.sh
    “`

    如果希望在系统启动时自动执行这个脚本,可以将其添加到自动启动脚本中,例如在`/etc/rc.local`文件的末尾添加以下内容:

    “`
    /path/to/mycommand.sh &
    “`

    这将会在系统启动时自动执行这个脚本并将其放入后台执行。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,要让某个命令一直执行,可以通过以下几种方法实现:

    1. 使用循环结构
    可以使用while或for循环结构来实现一直执行某命令。例如,下面的示例是使用while循环结构来实现每隔一段时间执行一次命令:

    “`bash
    while true; do
    # 在这里写需要执行的命令
    sleep 1
    done
    “`
    上面的示例中,`while true`表示一直执行循环,`sleep 1`表示每隔1秒执行一次命令。

    2. 使用无限循环
    可以使用无限循环结构来实现一直执行某命令。例如,下面的示例是使用无限循环结构来实现每隔一段时间执行一次命令:

    “`bash
    for (( ; ; )); do
    # 在这里写需要执行的命令
    sleep 1
    done
    “`
    上面的示例中,`for (( ; ; ))`表示无限循环,`sleep 1`表示每隔1秒执行一次命令。

    3. 使用定时任务
    可以使用Linux系统自带的定时任务工具crontab来实现一直执行某命令。具体步骤如下:

    1. 使用命令`crontab -e`编辑当前用户的定时任务配置文件。
    2. 在文件中添加一行类似于以下的内容来配置定时执行的命令:
    “`
    * * * * * command
    “`
    其中,`* * * * *`表示定时执行的时间配置,具体含义如下:
    – 第1个星号表示分钟,范围为0-59。
    – 第2个星号表示小时,范围为0-23。
    – 第3个星号表示日期,范围为1-31。
    – 第4个星号表示月份,范围为1-12。
    – 第5个星号表示星期几,范围为0-7,其中0和7都表示星期天(具体表示参考系统配置,可能会有差异)。
    `command`表示要定时执行的命令。
    3. 保存并退出文件。
    4. 定时任务会在配置的时间自动执行指定的命令。

    总结:
    以上是在Linux中让某个命令一直执行的几种方法,包括使用循环结构、无限循环和定时任务。根据具体需求选择合适的方法,来实现需要的功能。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部