文件系统管理
文件夹操作相关命令:
-
cd:change directory,改变当前工作文件夹,如果不带任何参数,会将当前目录设置为当前用户的主目录。
cd ../ # 当前目录变为 上一级 cd # 当前目录变为 用户的主目录
-
pwd:print working directory,打印(查看)当前工作文件夹。
-
mkdir:make directory,创建一个新文件夹,常用参数:-p 支持创建多级文件夹。
mkdir -p /home/heipi/a/b/c
-
rmdir:remove directory,删除一个已存在的空文件夹(除了 . 和 … 之外没有任何文件)。要删除任意文件夹,基本都使用 rm -rf 命令。
rm -rf hp # -r 递归删除 -f 强制执行 将 hp 文件夹以及所包含的文件全部删除
-
mv:move,移动文件夹,也可以用于移动普通文件。第一个参数为源文件夹,第二参数为目标文件夹,如果目标文件夹已存在,就将源文件夹移动到它下面去,否则就是重命名。所以,通常用该命令实现对文件夹重命名。
-
ls:list,查看某个目录下的文件信息,如果不带任何参数,就是查看当前目录下的文件信息。常用参数:-l 查看文件的详细信息(比如大小、权限、时间等),-a 查看所有文件(包括隐藏文件), -h 显示文件大小(KB,MB等)
-
cp:copy,拷贝文件夹,需要带上 -r 参数,也可以用来拷贝普通文件。
-
chown:change ownership,修改文件的所属用户和所属组群,文件夹和普通都一样。
普通文件操作相关命令:
- vi/vim:文本编辑器,和 Windows 系统自带的记事本一样,只不过它是字符化界面(CUI),基本上所有 Linux 系统都自带安装了,功能非常强大,还支持插件。vim 是 vi 的增强版,vim 功能更强,也更好用。由于没有图形化用户界面(GUI),所有用法非常古怪,但我们必须学会使用它们。i 或 a 进入插入模式, esc 进入命令模式, :w 表示写入(write),即保存文件,:q 表示退出(quit)编辑器,:wq 表示保存并退出,:q! 表示不保存退出。
- touch:修改普通文件或文件夹的最新修改时间,如果目标文件不存在,它会自动创建一个新的空文件,通过 -d 参数可以指定具体时间,否则默认为当前时间。
- 使用重定向符将某条命令的执行结果导入到一个文件中,有两种:> 和 >>,如果目标文件不存在,它两都会自动创建一个新文件,如果目标文件已存在,> 会清空其已有数据内容,然后再导入新数据内容,而 >> 会保留其已有数据内容,并在末尾插入新数据内容。可以和 echo 命令配合使用,创建出具有初始数据内容的新文件。
- stat:state,查看普通文件或文件夹的状态信息。
- rm:remove,删除普通文件,也可以用于删除文件夹,此时必须带上 -r 参数。
- mv:move,移动普通文件,也可以用于移动文件夹。第一个参数为源文件,第二参数为目标文件,如果目标文件夹已存在,就将源文件移动到它下面去,否则就是重命名。所以,通常用该命令实现对文件重命名。
- cp:copy,拷贝普通文件,也可以用于拷贝文件夹,此时必须带上 -r 参数。
详解 ls -l 命令的执行结果:
-
第 1 列中第一个字符表示文件类型,通常有:d 表示文件夹,- 表示普通文件,l 表示软链接(一个快捷方式,指向另一个文件的文件),p 表示管道文件等。
-
第 1 列中第 2 个到第 10 个字符表示文件的访问权限(或称文件模式), 就三种情况: r(可读), w(可写), x(可执行)。等分三组,分别是 文件所有者,文件所属主组群里的人,其他所有人。每一组的满权限都是rwx,如果不具备相应的权限,用 - 表示。
-
第 2 列表示文件的硬链接数。
-
第 3 列表示文件的所有者(即所属用户,文件的主人),第 4 列表示文件的所属主组群。
-
第 5 列表示文件大小(字节)。
-
第 6 列到第 8 列表示文件的最近修改时间。
-
最后一列表示文件的名字
文件名带 . 的是隐藏文件。 可以用 ls -a 进行查看
在 Linux 系统中,每个文件都必须属于一个用户和组群,不能是孤魂野鬼