4

我可以使用 herestrings 将字符串传递给命令,例如

cat <<< "This is a string"

如何使用 herestrings 将两个字符串传递给命令?我该怎么做

### not working
diff <<< "string1" "string2"

### working but overkill
echo "string1" > file1
echo "string2" > file2
diff file1 file2
4

2 回答 2

9

您不能使用两个 herestrings 作为同一命令的输入。实际上,最新的将取代所有其他的。示范:

cat <<< "string 1" <<< "string 2" <<< "string 3"
# only shows "string 3"

另一方面,如果您真正想要的是区分两个直接输入,您可以这样做:

diff <(echo "string 1") <(echo "string 2")
于 2013-11-11T11:00:08.890 回答
2

您可以简单地连接两个字符串:

cat <<< "string1""string2"

(不是两者之间缺乏空间)。这里的字符串现在由一个单词组成,其内容是两个字符串的内容。

于 2013-11-11T13:22:55.970 回答