文件和目录操作
ls
列出当前目录内容
代码语言:javascript复制ls [选项] [文件或目录...]
- 常用选项
- -a, --all:显示所有文件,包括以点 (.) 开头的隐藏文件。
- -l:使用长格式列出文件的详细信息。
- -h, --human-readable:与
-l
一起使用,以人类可读的格式显示文件大小。 - -r, --reverse:逆序排列输出。
- -t:按修改时间排序,最近的排在最前面。
- -R, --recursive:递归列出子目录中的内容。
- -S:按文件大小排序,最大的排在最前面。
- -1:每行只显示一个文件。
- –color:根据文件类型用不同颜色显示。
tree
tree
命令是一个在类 Unix 操作系统中用于以树状结构显示目录内容的命令。
在某些系统上,tree
命令可能默认未安装。你可以使用包管理器来安装它。
在CentOS/RedHat上安装:
代码语言:javascript复制sudo yum install tree
在Debian/Ubuntu上安装:
代码语言:javascript复制sudo apt-get install tree
基本用法
代码语言:javascript复制tree [选项] [目录]
常用选项
- -a:显示所有文件和目录,包括隐藏文件。
- -d:仅显示目录。
- -L level:限制递归的层级深度。
- -f:显示文件和目录的完整路径。
- -i:不打印缩进行。
- -h:以人类可读的格式打印文件大小(如:1K,234M,2G)。
- -p:在每个文件名前显示文件权限。
- -u:显示文件的所有者。
- -g:显示文件的组。
- -s:在每个文件名前显示文件大小。
- -t:按文件修改时间排序。
- –du:显示每个目录的磁盘使用量。
cd
cd
:改变当前目录。
cd [目录]
这里我们要知道
- " . " 表示当前目录
- " … " 表示当前目录的上一级目录。
- " ./ " 表示当前目录下的某个文件或文件夹,视后面跟着的名字而定
- " …/ " 表示当前目录上一级目录的文件或文件夹,视后面跟着的名字而定。
pwd
pwd
:显示当前工作目录。
pwd
mkdir
mkdir
是一个常用的命令,用于在 Linux 和类 Unix 系统上创建新目录。下面是 mkdir
命令的简要说明:
mkdir [选项] 目录名
mkdir
:这是用于创建目录的命令。
[选项]:mkdir
命令有一些可选选项,可用于指定不同的行为。常见选项包括:
-p
:递归创建目录,如果指定的路径中包含不存在的父目录,则会一并创建。-m
:指定新创建目录的权限模式。
目录名
:要创建的新目录的名称。可以是相对路径或绝对路径。
rmdir
rmdir
:删除空目录。
- 示例:
rmdir old_directory
cp
cp
:这是用于复制文件和目录的命令。
-r
:这是cp
命令的一个选项,表示递归复制,即复制指定目录及其所有子目录和文件。-f
:这是cp
命令的另一个选项,表示强制复制。如果目标文件已经存在,将覆盖目标文件而不提示用户。
rm
代码语言:javascript复制rm [选项] 文件...
常用选项
- -f, --force:强制删除文件,无论文件是否存在,不提示确认。
- -i:删除前逐一询问确认。
- -I:如果要删除的文件超过三个或递归删除时提示确认一次。
- -r, -R, --recursive:递归删除目录及其内容。
- -d, --dir:删除空目录。
- -v, --verbose:显示删除的详细信息。
unlink
在 Linux 系统中,unlink
命令是用于删除文件或符号链接的命令。它通常与文件系统中的 unlink
系统调用相对应,用于从文件系统中删除文件或链接。
unlink FILE
unlink myfile.txt
FILE
:要删除的文件或符号链接的路径。
注意事项
unlink
命令会直接删除指定的文件或符号链接,而不会将其放入回收站,因此要谨慎使用。- 如果文件正在被其他进程使用,或者你没有足够的权限删除文件,则会显示相应的错误信息,并且文件不会被删除。
- 当你使用
unlink
删除一个文件时,文件的内容和磁盘空间将会被立即释放,不会像rm
命令那样将文件放入回收站。 - 如果要删除一个目录及其包含的所有文件和子目录,应该使用
rm -r
命令,但同样要谨慎使用,以免误删重要文件。
touch
touch
是一个用于创建空文件或更改文件时间戳的命令。它的基本语法是:
touch [选项] 文件名
touch`:这是用于创建或更改文件时间戳的命令。
[选项]touch 命令有一些可选选项,用于指定不同的行为。常见选项包括:
-a
:只更改访问时间。-c
:如果文件不存在,则不创建文件。-m
:只更改修改时间。-t
:使用指定的时间戳。
文件名
:要创建或更改时间戳的文件的名称。
如果要同时创建多个文件,可以在命令中提供多个文件名:
代码语言:javascript复制touch file1.txt file2.txt file3.txt
另外,touch
命令还可以用于更改文件的访问时间戳或修改时间戳。例如,要将文件 “example.txt” 的修改时间设置为当前时间,可以运行:
touch -m example.txt
或者,要将文件 “example.txt” 的访问时间和修改时间都设置为特定时间戳,可以运行:
代码语言:javascript复制touch -t YYYYMMDDHHMM example.txt
其中 YYYYMMDDHHMM
是希望设置的时间戳。
mv
mv
是一个用于移动文件或重命名文件的命令。它的基本语法是:
mv [选项] 源文件 目标文件或目录
mv
:这是用于移动文件或重命名文件的命令。
[选项]:mv
命令有一些可选选项,用于指定不同的行为。常见选项包括:
-i
:在移动文件时进行交互式确认。如果目标文件已经存在,将提示用户是否覆盖。-f
:强制移动文件,即不进行交互式确认,覆盖目标文件(如果存在)。-v
:显示详细的操作信息,包括移动的源文件和目标文件路径。
源文件`:要移动或重命名的文件的路径或名称。
目标文件或目录`:移动到的目标文件或目录的路径。如果目标是一个目录,源文件将被移动到该目录中;如果目标是一个文件名,源文件将被移动并重命名为目标文件名。