尝试让watch jobs
工作。这很棘手,因为jobs
报告当前shell拥有的作业,watch
创建另一个shell。因此,我想运行. watch jobs
或source watch jobs
,但我收到此错误:
-bash: source: /usr/bin/watch: cannot execute binary file
以下是file /usr/bin/watch
的输出:
/usr/bin/watch: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, BuildID[sha1]=0xe207fd209faf781a58f5f30922c99da759bd3953, stripped
在这种情况下如何调试source
?
答案 0 :(得分:7)
您只能使用source
个脚本,而不能执行可执行文件。尝试:
while true; do clear; jobs; sleep 2; done
答案 1 :(得分:2)
您不能在shell中使用二进制文件,它仅适用于shell脚本。
source command
仅用于在当前进程中执行shell脚本,而不需要新的子shell进程。