linux - 我们如何从当前终端打开 minicom 并传递多个命令来执行并使用 shell 脚本退出到第一个终端

标签 linux bash

我正在尝试编写一个 shell 脚本来创建一个新窗口并在其中运行一个 minicom 终端(连接到/dev/ttyACM0)。 这是脚本文件 my_script.sh:

#!/bin/bash
gnome-terminal --command minicom
echo "\n" >> /dev/ttyACM0
sleep 5
echo "\n" >> /dev/ttyACM0
echo "run x_boot" >> /dev/ttyACM0
sleep 5
echo "root" >> /dev/ttyACM0
sleep 3
echo "cd /tmp" >> /dev/ttyACM0
sleep 1

在上面的代码中,我将所有回显命令直接传递给设备文件,而不是传递给 minicom 终端。

要求:

  1. 现在我需要发送 command1 到 minicom
  2. 在发送下一个命令之前让终端休眠 5 秒
  3. 发送命令2
  4. 再次等待 5 秒。
  5. 许多命令都是自动化的
  6. 之后在不关闭 minicom 的情况下退出终端

请帮我解决这个问题。

最佳答案

使用 minicom 脚本 (runscript) 而不是 bash echoes。它有发送和 sleep 命令:

-S, --script=SCRIPT    : run SCRIPT at startup

关于linux - 我们如何从当前终端打开 minicom 并传递多个命令来执行并使用 shell 脚本退出到第一个终端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27729947/

相关文章:

linux - 如何从命令内部解析中转义单引号?

linux - 不使用 ls 在 shell 中递归目录列表

bash - 如何在 Bash 中将变量设置为命令的输出?

c - 使用 AVX2 查找元素索引 - 代码优化

linux - 带有 -p 选项的 Ubuntu Linux 用户添加

linux - 如何一次重命名多个文件

regex - 删除 key :value pair from json file using shell script

linux - 在 docker exec 命令中使用 '*'

linux - 从 .bashrc 中键/值对的 .list 文件设置环境变量

bash - 从 m4 中的 esyscmd 中删除尾随换行符