【问题标题】:Executing multiple bash statements simultaneously including airodump-ng同时执行多个 bash 语句,包括 airodump-ng
【发布时间】:2016-03-16 21:02:04
【问题描述】:

在我的 Raspberry Pi 上,我想在 pi 每次启动时执行一些代码。所以我将以下行添加到 /etc/rc.local

/home/pi/Documents/start.sh &

在该文件中,我有以下代码:

sudo airmon-ng start wlan0 &
sudo airodump-ng --write output mon0 &
python3 start_server.py output01.csv &

请注意,所有行都使用与符号在单独的子进程中处理。不幸的是,这不起作用。执行第一行时,我看到所有输出,然后在它终止后执行第二行,并显示所有输出。由于这个进程永远不会结束,所以进程永远不会终止,第三条语句也不会执行。

这里出了什么问题,为什么语句不在子进程中执行? [是的,我确信代码是正确的,因为它在一个终端中运行第 1-2 行并在另一个终端中运行第 3 行时完美运行]

【问题讨论】:

  • 这些命令看起来像是相互依赖的。如果您颠倒三个命令的顺序,您会期望脚本正常工作吗?如果不是,您不能期望它们作为同时启动的单独子流程工作。
  • 我会尝试静音输出 airodump-ng 可能会像这样产生 sudo sh -c 'airodump-ng --write output mon0 2>&1 >/dev/null' &

标签: linux bash shell raspberry-pi


【解决方案1】:

我会添加“nohup”。

nohup sudo airmon-ng start wlan0 &
nohup sudo airodump-ng --write output mon0 &
nohup python3 start_server.py output01.csv &

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-16
    • 1970-01-01
    • 2021-11-28
    • 2013-11-15
    • 1970-01-01
    • 2015-05-23
    • 2016-02-19
    • 2012-06-09
    相关资源
    最近更新 更多