Bash 捕获curl子shell的输出?
我有这样一个curl命令:Bash 捕获curl子shell的输出?,bash,curl,Bash,Curl,我有这样一个curl命令: curl -v --silent --tlsv1.1 https://google.com/ 2>&1 | grep TLS 我想在变量中捕获该命令的输出。通常情况下,我会使用子shell来完成此操作,但它似乎不起作用 以下是我想做的: OUT=$(curl -v --silent --tlsv1.1 https://google.com/ 2>&1 | grep TLS) echo $OUT 但是该命令输出以下内容(如果我在一个目录中
curl -v --silent --tlsv1.1 https://google.com/ 2>&1 | grep TLS
我想在变量中捕获该命令的输出。通常情况下,我会使用子shell来完成此操作,但它似乎不起作用
以下是我想做的:
OUT=$(curl -v --silent --tlsv1.1 https://google.com/ 2>&1 | grep TLS)
echo $OUT
但是该命令输出以下内容(如果我在一个目录中,其中有一个名为“UNEXPECTED.TXT”的文件)
意外的.TXT TLS 1.0连接使用TLS\u ECDHE\u RSA\u和\u AES\u 128\u CBC\u SHA
因此,它似乎要列出当前目录的目录列表,然后将我的输出附加到该目录的末尾
谢谢 使用引号:
echo "$OUT"
* TLS 1.1 connection using TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
由于变量
OUT
有一个起始*
,不带引号shell首先将*
扩展到当前路径中的所有文件/目录,并列出所有文件/目录。Ahhh。。。这是有道理的!谢谢