【问题标题】:Blank output command substitution - FTP空白输出命令替换 - FTP
【发布时间】:2019-05-05 02:08:48
【问题描述】:

当尝试将所有输出记录到 FTP 会话的变量中时,该变量为空。我尝试了以下变体,结果都一样:

OUT=$(ftp -in $FTP_HOST << END_SCRIPT
  quote USER $FTP_USER
  quote PASS $FTP_PASS
  binary
  cd /home/ftp/files
  get test.txt
  quit
END_SCRIPT
)

echo $OUT

变体 #2:

OUT=$(ftp -in $FTP_HOST 2>&1 << END_SCRIPT
  quote USER $FTP_USER
  quote PASS $FTP_PASS
  binary
  cd /home/ftp/files
  get test.txt
  quit
END_SCRIPT
)

echo $OUT

还有其他地方可以写入输出吗?

【问题讨论】:

  • $(...) 语法只会捕获stdout 上的内容。任何打印到stderr 或写入终端的内容都不会被捕获。如果您尝试记录整个会话,您是否考虑过使用script 命令?

标签: bash ftp output


【解决方案1】:

管道| tee 适用于我的用例

【讨论】:

    猜你喜欢
    • 2017-05-03
    • 2021-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-17
    • 1970-01-01
    • 2023-03-17
    相关资源
    最近更新 更多