据我了解,无法捕获 SIGKILL。这意味着一个进程没有时间在操作系统销毁它之前杀死它的子进程。这可以通过 shell 脚本来演示。
#! /bin/bash
trap : SIGTERM SIGINT SIGKILL # SIGKILL is pointless.
mplayer video.avi
Run Code Online (Sandbox Code Playgroud)
用 SIGKILL 杀死它会使 mplayer 运行。
$ kill -9 $pid
Run Code Online (Sandbox Code Playgroud)
但是当使用终端模拟器(xterm,终端,...)时,它的孩子会被杀死。这怎么可能?
$ mplayer
Run Code Online (Sandbox Code Playgroud)
并杀死它:
$ kill -9 $terminal_pid
Run Code Online (Sandbox Code Playgroud)
mplayer 随船沉没。终端模拟器是否以某种方式捕获了 SIGKILL 或者这里是否有另一种力量在起作用?
我想知道是否有一种工具可以抓取文件的文本内容。基本上,我想放入 pdf、word 文档、压缩文件或其他任何内容,并获取其中包含的文本。
有strings
打印出可打印字符的序列,但这不适用于许多压缩格式。它的“愚蠢”性质也意味着它经常打印的不仅仅是文本。不过,对于未知的文件类型,这将是一个很好的后备。
有一个pdftotext
命令几乎完全符合我的要求,但它只适用于 pdf。
是否有适用于多种格式或将更多这些工具联系在一起的工具?
我很多人都提到他们的工具是非标准的。我只想指出这很好。