【问题标题】:Linux copy file after USB is connected in Node JS / Python / C / C++ [closed]在Node JS / Python / C / C ++中连接USB后的Linux复制文件[关闭]
【发布时间】:2017-07-23 22:17:19
【问题描述】:

我的 USB 驱动器上有一个 config.json 文件。我想运行等待 USB 驱动器连接的程序(连接到笔记本电脑/Raspberry PI 3)并将 config.json 文件复制到我的本地文件中的某个路径(如 /home/pi/seat-controller/src。在 Node JS 中是否可能?我查看了这个 url https://www.npmjs.com/package/usb-detection 所以它在连接 USB 时触发事件,但我不知道在哪里可以找到那个 USB 的文件。对不起,我在 linux 系统中不太好。如果在 Node 中不可能JS,是否可以在这些语言中使用:Python、C、C++?

【问题讨论】:

  • 这是特定于操作系统的...您通常在 *nix 中使用 udev-rules
  • 我使用的是 linux(笔记本电脑上是 Ubuntu,Raspberry 上是 Raspbian)

标签: python c++ c node.js linux


【解决方案1】:

查看 Node JS usb-detection 包的来源,似乎它们没有存储设备 ID 或其他一些可以让您挂载 USB 驱动器的有价值信息。否则,您可以将此包与 nodeos-mount 或其他可以实际安装驱动器的 Node JS 包结合使用,您应该没问题。如果您使用 C++,您可以查看 usb-detection 包 (https://github.com/MadLittleMods/node-usb-detection/blob/master/src/detection_linux.cpp) 的源代码并使用相同的机制,但添加了挂载和复制。

【讨论】:

  • 太好了,我去看看这个C++,谢谢!
  • @JurajCarnogursky 你当然可以在 C++ 中从头开始做所有事情,但我认为 usb-detection 包的来源可能是一个很好的起点:)
【解决方案2】:

这是特定于操作系统的写入 udev 规则文件条目

类似

ACTION=="add", ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1607", RUN+="/home/grenage/auto_import.sh"

告诉脚本在连接 USB 驱动器时运行

看看这个关于 udev-rules 的教程(它不包括 RUN 关键字,这是启动你的脚本执行任何操作的原因)

http://weininger.net/how-to-write-udev-rules-for-usb-devices.html

【讨论】:

    猜你喜欢
    • 2011-09-26
    • 1970-01-01
    • 1970-01-01
    • 2012-12-16
    • 2010-12-20
    • 2022-09-26
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多