zoukankan      html  css  js  c++  java
  • 使用sz/rz基于串口传输文件

    关键词:lrzsz、minicom、ZMODEM、MD5sum等。

    在环境受限的嵌入式系统上,往往只有串口可以使用。

    此时如果需要传输文件,需要借助rz/sz工具,可以使用的传输协议有ZMODEM、YMODEM、XMODEM,一般首选的是ZMODEM。

    这里记录minicom下使用rz/sz进行文件传输的操作。

    首先说明一下rz和sz的文件传输方向,这些命令都是在调试板上执行的,调试板通过串口和PC相连。

    rz表示调试版发起从PC接收文件,sz表示调试版发送向PC传送文件。

    1. 使能sz/rz工具

    通过buildroot打开Target packages->Networking applications->lrzsz,也即打开了BR2_PACKAGE_LRZSZ

    2. minicom下使用sz/rz工具

    2.1 minicom下sz发送文件

    首先看一下sz的使用,最简单的就是“sz filename”,传送的文件默认在启动minicom的路径。

    如果想指定路径可以通过“sz -f full_path_name”实现,这种方法会在目标板上同样地址保存文件。这样做需要谨慎。

    在文件传输结束后,调试版和PC两边通过md5sum验证一下传输数据有效性。

     更多使用方法:

    sz version 0.12.20
    Usage: sz [options] file ...
       or: sz [options] -{c|i} COMMAND
    Send file(s) with ZMODEM/YMODEM/XMODEM protocol
        (X) = option applies to XMODEM only
        (Y) = option applies to YMODEM only
        (Z) = option applies to ZMODEM only
      -+, --append                append to existing destination file (Z)
      -2, --twostop               use 2 stop bits
      -4, --try-4k                go up to 4K blocksize
          --start-4k              start with 4K blocksize (doesn't try 8)
      -8, --try-8k                go up to 8K blocksize
          --start-8k              start with 8K blocksize
      -a, --ascii                 ASCII transfer (change CR/LF to LF)
      -b, --binary                binary transfer
      -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)
      -c, --command COMMAND       execute remote command COMMAND (Z)
      -C, --command-tries N       try N times to execute a command (Z)
      -d, --dot-to-slash          change '.' to '/' in pathnames (Y/Z)
          --delay-startup N       sleep N seconds before doing anything
      -e, --escape                escape all control characters (Z)
      -E, --rename                force receiver to rename files it already has
      -f, --full-path             send full pathname (Y/Z)
      -i, --immediate-command CMD send remote CMD, return immediately (Z)
      -h, --help                  print this usage message
      -k, --1k                    send 1024 byte packets (X)
      -L, --packetlen N           limit subpacket length to N bytes (Z)
      -l, --framelen N            limit frame length to N bytes (l>=L) (Z)
      -m, --min-bps N             stop transmission if BPS below N
      -M, --min-bps-time N          for at least N seconds (default: 120)
      -n, --newer                 send file if source newer (Z)
      -N, --newer-or-longer       send file if source newer or longer (Z)
      -o, --16-bit-crc            use 16 bit CRC instead of 32 bit CRC (Z)
      -O, --disable-timeouts      disable timeout code, wait forever
      -p, --protect               protect existing destination file (Z)
      -r, --resume                resume interrupted file transfer (Z)
      -R, --restricted            restricted, more secure mode
      -q, --quiet                 quiet (no progress reports)
      -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds
          --tcp                   build a TCP connection to transmit files
          --tcp-server            open socket, wait for connection
      -u, --unlink                unlink file after transmission
      -U, --unrestrict            turn off restricted mode (if allowed to)
      -v, --verbose               be verbose, provide debugging information
      -w, --windowsize N          Window is N bytes (Z)
      -X, --xmodem                use XMODEM protocol
      -y, --overwrite             overwrite existing files
      -Y, --overwrite-or-skip     overwrite existing files, else skip
          --ymodem                use YMODEM protocol
      -Z, --zmodem                use ZMODEM protocol

    2.2 minicom下rz接收文件

    通过rz接收文件,首先需要输入tz:

    然后输入Ctrl+A,紧接着按下Z,在按下S(Send files)。

    选择zmodem,进入文件选择界面。

    上下键或者PageUp/PageDown移动,空格选择文件。

    同样使用md5sum进行验证。

    rz version 0.12.20
    Usage: rz [options] [filename.if.xmodem]
    Receive files with ZMODEM/YMODEM/XMODEM protocol
        (X) = option applies to XMODEM only
        (Y) = option applies to YMODEM only
        (Z) = option applies to ZMODEM only
      -+, --append                append to existing files
      -a, --ascii                 ASCII transfer (change CR/LF to LF)
      -b, --binary                binary transfer
      -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)
      -c, --with-crc              Use 16 bit CRC (X)
      -C, --allow-remote-commands allow execution of remote commands (Z)
      -D, --null                  write all received data to /dev/null
          --delay-startup N       sleep N seconds before doing anything
      -e, --escape                Escape control characters (Z)
      -E, --rename                rename any files already existing
          --errors N              generate CRC error every N bytes (debugging)
      -h, --help                  Help, print this usage message
      -m, --min-bps N             stop transmission if BPS below N
      -M, --min-bps-time N          for at least N seconds (default: 120)
      -O, --disable-timeouts      disable timeout code, wait forever for data
          --o-sync                open output file(s) in synchronous write mode
      -p, --protect               protect existing files
      -q, --quiet                 quiet, no progress reports
      -r, --resume                try to resume interrupted file transfer (Z)
      -R, --restricted            restricted, more secure mode
      -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds
      -S, --timesync              request remote time (twice: set local time)
          --syslog[=off]          turn syslog on or off, if possible
      -t, --timeout N             set timeout to N tenths of a second
      -u, --keep-uppercase        keep upper case filenames
      -U, --unrestrict            disable restricted mode (if allowed to)
      -v, --verbose               be verbose, provide debugging information
      -w, --windowsize N          Window is N bytes (Z)
      -X  --xmodem                use XMODEM protocol
      -y, --overwrite             Yes, clobber existing file if any
          --ymodem                use YMODEM protocol
      -Z, --zmodem                use ZMODEM protocol
  • 相关阅读:
    leetcode 309. Best Time to Buy and Sell Stock with Cooldown
    leetcode 714. Best Time to Buy and Sell Stock with Transaction Fee
    leetcode 32. Longest Valid Parentheses
    leetcode 224. Basic Calculator
    leetcode 540. Single Element in a Sorted Array
    leetcode 109. Convert Sorted List to Binary Search Tree
    leetcode 3. Longest Substring Without Repeating Characters
    leetcode 84. Largest Rectangle in Histogram
    leetcode 338. Counting Bits
    git教程之回到过去,版本对比
  • 原文地址:https://www.cnblogs.com/arnoldlu/p/10537549.html
Copyright © 2011-2022 走看看