在命令运行时执行bash循环

马可

我想构建一个执行命令的bash脚本,同时执行其他操作,如果脚本被杀死,则有可能杀死该命令。例如,执行一个大文件的cp,同时打印自复制开始以来经过的时间,但是如果脚本被杀死,它也会杀死副本。并不想用rsync的,原因有二:1)是缓慢的,2)我想学习如何做到这一点,它可能是有用的。我尝试了这个:

until cp SOURCE DEST
do
#evaluates time, stuff, commands, file dimensions, not important now
#and echoes something
done

但它不执行该do - done块,因为它正在等待副本结束。你能建议点什么吗?

约翰·库格曼

until与相对while与另一个命令运行时的处理无关。为此,您需要使用在后台运行任务&

cp SOURCE DEST &
pid=$!

# If this script is killed, kill the `cp'.
trap "kill $pid 2> /dev/null" EXIT

# While copy is running...
while kill -0 $pid 2> /dev/null; do
    # Do stuff
    ...
    sleep 1
done

# Disable the trap on a normal exit.
trap - EXIT

kill -0检查进程是否正在运行。请注意,顾名思义,它实际上并没有发出信号并杀死进程。至少没有信号0。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

命令运行时执行循环

来自分类Dev

从脚本运行时,Bash 脚本未正确执行命令

来自分类Dev

无法使用运行时或ProcessBuilder执行排序命令

来自分类Dev

使用运行时类执行“ adb logcat”命令

来自分类Dev

无法使用运行时或ProcessBuilder执行排序命令

来自分类Dev

使用运行时类执行“ adb logcat”命令

来自分类Dev

在bash命令中运行时,分号会做什么?

来自分类Dev

使用sudo bash运行时找不到命令

来自分类Dev

在 docker bash 脚本中运行时找不到命令

来自分类Dev

当'select'循环运行时Bash忽略SIGINT陷阱

来自分类Dev

在bash循环中执行时找到“找不到命令”

来自分类Dev

Bash命令在由cronie执行时异步运行

来自分类Dev

循环运行时未定义对象,但顺序执行时未定义

来自分类Dev

使用runtime.getruntime命令通过Java代码运行时,该命令无法成功执行

来自分类Dev

在现有命令运行时如何执行新命令?

来自分类Dev

当在bash中的后台运行时,内部for循环会产生新的bash进程

来自分类Dev

在iisnode上运行时从nodeJS应用执行cmd命令不起作用

来自分类Dev

使用Office JS在共享的运行时中执行自定义功能和命令功能

来自分类Dev

在iisnode上运行时从nodeJS应用执行cmd命令不起作用

来自分类Dev

在angular 7中循环运行时,如何确保http帖子已完全执行?

来自分类Dev

在远程命令模式下运行时,VLC循环/重复不是无缝的

来自分类Dev

在运行时执行好的方法

来自分类Dev

Java运行时执行-确认问题

来自分类Dev

执行函数期间的运行时异常

来自分类Dev

运行时命令的每个输出的前缀

来自分类Dev

以sudo运行时找不到命令

来自分类Dev

嵌套循环的运行时间

来自分类Dev

for循环的C运行时错误

来自分类Dev

分析嵌套循环运行时间?

Related 相关文章

  1. 1

    命令运行时执行循环

  2. 2

    从脚本运行时,Bash 脚本未正确执行命令

  3. 3

    无法使用运行时或ProcessBuilder执行排序命令

  4. 4

    使用运行时类执行“ adb logcat”命令

  5. 5

    无法使用运行时或ProcessBuilder执行排序命令

  6. 6

    使用运行时类执行“ adb logcat”命令

  7. 7

    在bash命令中运行时,分号会做什么?

  8. 8

    使用sudo bash运行时找不到命令

  9. 9

    在 docker bash 脚本中运行时找不到命令

  10. 10

    当'select'循环运行时Bash忽略SIGINT陷阱

  11. 11

    在bash循环中执行时找到“找不到命令”

  12. 12

    Bash命令在由cronie执行时异步运行

  13. 13

    循环运行时未定义对象,但顺序执行时未定义

  14. 14

    使用runtime.getruntime命令通过Java代码运行时,该命令无法成功执行

  15. 15

    在现有命令运行时如何执行新命令?

  16. 16

    当在bash中的后台运行时,内部for循环会产生新的bash进程

  17. 17

    在iisnode上运行时从nodeJS应用执行cmd命令不起作用

  18. 18

    使用Office JS在共享的运行时中执行自定义功能和命令功能

  19. 19

    在iisnode上运行时从nodeJS应用执行cmd命令不起作用

  20. 20

    在angular 7中循环运行时,如何确保http帖子已完全执行?

  21. 21

    在远程命令模式下运行时,VLC循环/重复不是无缝的

  22. 22

    在运行时执行好的方法

  23. 23

    Java运行时执行-确认问题

  24. 24

    执行函数期间的运行时异常

  25. 25

    运行时命令的每个输出的前缀

  26. 26

    以sudo运行时找不到命令

  27. 27

    嵌套循环的运行时间

  28. 28

    for循环的C运行时错误

  29. 29

    分析嵌套循环运行时间?

热门标签

归档