zoukankan      html  css  js  c++  java
  • 【Shell】脚本后台运行

    1.脚本运行的相关用法和说明

    用法 说明
    sh test.sh & 将脚本放在后台运行(常用方法)
    Crtl + c 停止执行当前任务或脚本
    Crtl + z 暂停执行当前任务或脚本
    bg 把当前任务或脚本放到后台执行,此处可以理解为background
    fg 把当前脚本或任务放到前台执行,如果有多个任务,可以使用fg加任务编号调出对应的脚本任务,
    如fg 2,是指调出第二个脚本任务,fg可以理解为fontground
    jobs 查看当前正在执行的脚本或任务
    kill 关闭执行的脚本任务,即以kill % 任务编号的形式关闭脚本,此处的任务编号,可以通过jobs得到

    2.实战演练

    现有测试脚本test.sh与demo.sh:

    [qinys@localhost 20200313]$ cat test.sh 
    #/bin/bash
    i=10
    while ((i>0))
    do
    	echo "$i" >> log.txt
    	sleep 1
    	((i--))
    done
    
    [qinys@localhost 20200313]$ cat demo.sh 
    #/bin/bash
    i=40
    while ((i>0))
    do
    	echo "$i" >> demo.txt
    	sleep 1
    	((i--))
    done
    
    

    (1)演示案例一:&与ctrl+c

    [qinys@localhost 20200313]$ sh test.sh & # 后台运行脚本
    [1] 47930
    [qinys@localhost 20200313]$ fg # 执行fg将脚本放到前台运行
    sh test.sh
    ^C  # 按Ctrl+c 停止执行脚本
    

    (2)演示案例二:fg与jobs、ctrl+z

    [qinys@localhost 20200313]$ sh test.sh &
    [1] 47982
    [qinys@localhost 20200313]$ sh demo.sh &
    [2] 47988
    [qinys@localhost 20200313]$ jobs # 查看正在运行的脚本任务
    [1]-  Running                 sh test.sh &
    [2]+  Running                 sh demo.sh &
    [qinys@localhost 20200313]$ fg 2 # 使用fg加jobs输出中任务编号调出对应编号的脚本到前台运行
    sh demo.sh
    ^Z   # Ctrl + z 临时暂停执行脚本,临时暂停的脚本如果需要回复执行,则先使用jobs查看挂起的任务编号,然后使用【fg 任务编号】即可继续执行
    [2]+  Stopped                 sh demo.sh
    
    

    (3)演示案例三:kill

    [qinys@localhost 20200313]$ sh test.sh &
    [1] 48231
    [qinys@localhost 20200313]$ sh demo.sh &
    [2] 48239
    [qinys@localhost 20200313]$ jobs
    [1]-  Running                 sh test.sh &
    [2]+  Running                 sh demo.sh &
    [qinys@localhost 20200313]$ kill %2 # 杀死任务
    [qinys@localhost 20200313]$ jobs
    [1]-  Running                 sh test.sh &
    [2]+  Terminated              sh demo.sh
    
  • 相关阅读:
    九度oj题目1019:简单计算器
    九度oj题目1555:重复子串
    Java泛型
    Remove Duplicates from Sorted Array
    Add Binary
    Plus One
    Remove Element
    Remove Nth Node From End of List
    Longest Common Prefix
    Roman to Integer
  • 原文地址:https://www.cnblogs.com/OliverQin/p/12485439.html
Copyright © 2011-2022 走看看