linux如何创建文件:常用命令对比
linux如何创建文件,主流可用命令包含touch、echo、cat、vi/vim,touch适合只新建空文件,不会写入内容;echo适合创建文件同时写入单行文本;cat适合批量写入多行内容;vi/vim属于编辑器,新建文件后需要手动保存退出,你在无编辑需求、仅需要生成空文件时优先选touch,需要直接写内容时选echo或cat,需要修改文件内容再保存时选用vim,该系列操作仅适用于你拥有对应目录读写权限的场景,在系统根目录、部分系统配置目录无权限时,直接执行命令会抛出权限拒绝报错。
linux创建文件touch命令用法
touch是专门用来生成空文件的命令,基础写法为touchtest.txt,执行后当前目录就会生成名为test.txt的空白文件,文件大小为0字节。touch还有一个附加特性,如果目标文件名已经存在,它不会覆盖原有内容,只会更新文件的访问时间和修改时间,这是它和echo、cat最明显的区别。
一次批量新建多个空文件,直接在命令后追加多个文件名即可,例如toucha.txtb.logc.conf,多个文件名之间用空格隔开。
权限不足会直接失败。
linux创建文件echo命令用法
echo命令可以在创建文件的同时写入文本,基础格式是echo内容>test.txt,>符号代表重定向输出,文件不存在时自动新建,文件已经存在时会清空原有内容再写入新文本。如果你不想覆盖原有内容,改用>>符号,实现追加写入,不会清空旧数据。
要写入带空格或者特殊符号的内容,需要把文本用单引号包裹,例如echo'hellolinux'>test.txt,避免shell识别出错。echo更适合简短单行内容,多行文本用它写会比较繁琐。
linux创建文件cat命令用法
搭配重定向符号,cat可以快速创建并写入多行内容,命令写法cat>test.txt,执行之后终端进入输入模式,你逐行输入文字,输入完成按下Ctrl+D结束输入,内容就保存进文件。这个方式适合一次性录入多行文本,不需要记忆编辑器操作快捷键。
cat还有读取文件的作用,单独cattest.txt是查看文件内容,只有加上>重定向符号,才具备新建写入文件的能力,不要混淆两种用法。
linux创建文件编辑器方式
vi和vim是文本编辑器,输入vimtest.txt,文件不存在时就会新建这个文件,进入编辑界面后,按下i键开启编辑模式,写完内容,按Esc,输入:wq回车,保存文件并退出编辑器。如果你只查看不保存,输入:q!直接退出,放弃本次改动。
这种方式适合文件创建之后还要持续修改、调整配置的场景,操作步骤多于touch和echo,单纯新建空文件不推荐选用。
| 命令 | 能否直接写内容 | 已有文件行为 | 适合场景 |
|---|---|---|---|
| touch | 否 | 不修改内容,更新时间戳 | 新建空白文件 |
| echo | 是 | >覆盖,>>追加 | 写入单行简短文本 |
| cat | 是 | >覆盖 | 一次性录入多行文本 |
| vim | 是 | 打开文件等待手动保存 | 需要编辑修改文件 |
文件名尽量避开空格、中文、特殊符号,这类名称会增加后续操作的复杂度,调用命令时需要额外加引号包裹,更容易出现执行异常。
你可以用ls命令验证文件是否创建成功,执行ls查看当前目录,目标文件名出现在列表里,代表创建操作生效。
