`tail -n +3 a.txt > b.txt` 并不会删除 `a.txt` 中的前三行,而是将从第三行开始到文件结束的内容输出到 `b.txt`。换句话说,它只是将从第三行开始的内容写入到一个新文件中,并不会改变原始文件 `a.txt`。
如果你想“删除”文件 `a.txt` 中的前三行(即让 `a.txt` 本身不再包含前三行),你可以使用如下命令:
sed -i '1,3d' a.txt
这个命令会直接在原文件 `a.txt` 中删除前三行内容。
如果你想将删除后的内容保存到一个新文件而不改变原文件,可以使用:
sed '1,3d' a.txt > b.txt
这样,`a.txt` 的前三行不会出现在 `b.txt` 中,但原文件 `a.txt` 保持不变。