You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu终端如何用单条命令完成创建文件并写入内容的操作

一次性创建文件并写入内容的实现方案

方法1:直接使用重定向操作(最常用)

Shell 自带的>输出重定向操作符本身就支持目标文件不存在时自动创建,完全不需要提前执行touch命令,单条命令就能完成你的需求:

ls > someFile

该命令会直接创建someFile(如果文件已存在则会覆盖原有内容),并将ls命令的输出写入文件,和你之前分两步操作的效果完全一致。
如果不想覆盖已有文件,仅追加内容可以改用>>操作符:

ls >> someFile

方法2:写入自定义多行内容用Here文档

如果需要写入自定义的静态文本而非命令输出,可以用Here文档语法,一次性写入多行内容:

cat > targetFile << EOF
第一行自定义内容
第二行自定义内容
可以写任意多行
EOF

输入末尾的EOF后命令自动执行,中间的所有内容会完整写入新创建的targetFile中。

方法3:同时输出到终端和文件用tee命令

如果你需要内容既写入文件,又在当前终端显示,可以用tee命令:

ls | tee someFile

文件不存在时会自动创建,效果和重定向一致,同时会在终端打印ls的输出结果。


错误写法说明

你之前尝试的ls > touch ff不符合Shell语法规则:>后的第一个参数会被Shell识别为目标文件名,因此这条命令实际执行逻辑是「将ls的输出写入名为touch的文件中」,末尾的ff会被识别为ls的多余参数,自然无法实现你的预期。


内容的提问来源于stack exchange,提问作者NotQuiteSo1337

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 22:09:04