当我执行
echo 123 > a.txt b.txt
时,我认为结果123
会被写入两个文件a.txt
和b.txt
,但真正的结果是只创建了一个文件。内容123 b.txt
被写入名为a.txt
的文件中。为什么?
我不知道为什么会这样,谷歌时我没有找到答案。
我认为在执行命令 echo 123>a.txt b.txt 时,它会尝试将输出 123 写入文件 a.txt 和 b.txt。但是,在大多数操作系统中,不支持此语法,这意味着它仅将输出写入第一个文件 a.txt,而忽略第二个文件 b。 txt.
该命令相当于echo 123>a.txt。如果要将相同的内容写入多个文件,则需要分别执行命令写入不同的文件,如:
回声123>a.txt
回声123>b.txt
如果要将相同的输入追加到多个文件中,可以使用 tee 命令,例如:
回声123 |三通 a.txt b.txt