Linux 文件和目录的新建与编辑完全指南
基础介绍
文件和目录 (Files and Directories)
在 Linux 系统中,一切皆文件。目录(Directories,也常被称为文件夹)是一种特殊的文件,用于组织和管理其他文件和目录。理解如何在 Linux 中创建、编辑文件和目录是进行系统管理和软件开发的基础。
工作原理简图:
1 | |
在 Linux 系统中的作用:
- 组织数据: 目录用于组织文件,方便查找和管理。
- 权限控制: 可以为文件和目录设置不同的权限,控制用户的访问。
- 程序运行环境: 程序的可执行文件、配置文件和数据文件通常放在特定的目录下。
常用命令
| 命令 | 参数 | 说明 |
|---|---|---|
mkdir |
-p (parents), -v (verbose) |
创建目录。-p 用于创建多级目录,-v 显示创建过程。 |
touch |
无常用参数 | 创建空文件。 |
rmdir |
-p (parents) |
删除空目录。-p 用于删除多级空目录。 ⚠️ 删除目录不可恢复! |
rm |
-r (recursive), -f (force) |
删除文件或目录。-r 用于递归删除目录及其内容,-f 强制删除。 ⚠️ 强制递归删除非常危险! |
cp |
-r (recursive) |
复制文件或目录。-r 用于复制目录及其内容。 |
mv |
无常用参数 | 移动或重命名文件或目录。 |
nano |
无常用参数 | 一个简单的文本编辑器。 |
vi/vim |
无常用参数 | 高级文本编辑器,功能强大,但学习曲线较陡峭。 |
cat |
无常用参数 | 用于显示文件内容。 |
echo |
用于在终端输出内容,常用于向文件中写入内容。 | |
> |
重定向操作符,将命令的输出写入到文件中(覆盖原有内容)。 | |
>> |
重定向操作符,将命令的输出追加到文件中。 |
命令使用频率:
mkdir: ★★★★touch: ★★★☆rmdir: ★★☆☆rm: ★★★★cp: ★★★☆mv: ★★★★nano: ★★★☆vi/vim: ★★★★cat: ★★★★echo: ★★★☆>: ★★★☆>>: ★★★☆☆
示例代码
1. 创建目录和文件
场景: 创建一个名为 project 的目录,并在其中创建 src 和 docs 两个子目录,以及一个名为 README.md 的文件。
1 | |
预期输出:
1 | |
2. 编辑文件
场景: 使用 nano 编辑器向 README.md 文件中添加一些描述信息。
1 | |
在 nano 编辑器中输入以下内容:
1 | |
按下 Ctrl + O 保存,然后按下 Ctrl + X 退出 nano。
3. 复制和移动文件
场景: 将 README.md 文件复制到 docs 目录下,并将 src 目录重命名为 source。
1 | |
4. 删除文件和目录
场景: 删除 docs 目录下的 README.md 文件,并删除空的 source 目录。
1 | |
⚠️ 高危操作警告: 使用 rm -rf 命令可以强制递归删除目录及其所有内容,务必谨慎使用,避免误删重要数据!
5. 使用 echo 和重定向创建和编辑文件
场景: 使用 echo 命令和重定向操作符创建一个名为 config.txt 的文件,并向其中写入一些配置信息。
1 | |
解释:
echo "database_url=localhost:5432" > config.txt:创建一个名为config.txt的文件,并将 “database_url=localhost:5432” 写入该文件。如果文件已存在,则会覆盖原有内容。echo "username=admin" >> config.txt:将 “username=admin” 追加到config.txt文件的末尾。
查看文件内容:
1 | |
预期输出:
1 | |
Metadata
- Tags: Linux, 文件管理, 目录操作, 文件编辑, 命令行, Shell
- Categories: 系统管理, 基础操作, 命令行工具