优秀的编程知识分享平台

网站首页 > 技术文章 正文

Linux进阶笔记-文件管理命令

nanyue 2025-01-14 16:12:01 技术文章 1 ℃

Linux 对 当前目录和父级目录使用一些约定。对于初学者来说,这可能会造成困惑。

无论何时在 Linux 中的终端中,您都将位于所谓的当前工作目录中。通常,命令提示符将显示完整的工作目录,或者仅显示该目录的最后一部分。您的提示可能如下所示:

user@host ~/somedir $
user@host somedir $
user@host /home/user/somedir $

上面的提示符都表示您当前的工作目录是 /home/user/somedir

在 Linux 中 '..' 表示父目录,'.' 表示当前目录。因此,如果当前目录是 /home/user/somedir,执行命令 cd ../somedir 的结果并不会改变目录。

下表列出了一些常用的文件管理命令

目录导航

Command

Utility

pwd

获取当前工作目录的完整路径。

cd -

导航到您正在使用的最后一个目录。

cd ~ 或者仅 cd

导航到当前用户的主目录。

cd ..

转到当前目录的父目录(注意 cd 和 .. 中间有空格)

列出目录中的文件

Command

Utility

ls -l

以长格式(类似表格)列出当前目录中的文件和目录(建议使用 ls 搭配 -l 选项以获得更好的可读性)。

ls -ld dir-name

列出有关目录 dir-name 的目录长格式信息,而不是其内部有什么文件和目录的信息。

ls -a

列出所有文件,包括隐藏的文件(以 . 开头的文件名在 Linux 中是隐藏文件)。

ls -F

在文件名的末尾附加一个符号以指示其类型( * 表示可执行文件,/ 表示目录,@ 表示符号链接,= 表示套接字(socket),| 表示FIFO管道文件 )

ls -lt

按上次修改时间降序列出文件,最近修改的文件显示在顶部( -l选项提供具有更好可读性的长格式)。

ls -lh

以用户可读的格式列出文件大小。

ls -lR

递归显示所有子目录。

tree

将从当前目录中的文件、子目录生成树状的形式来表示。

文件/目录创建、复制和删除

Command

Utility

cp -p source destination

将文件从源复制到目标。-p 代表 preservation。它在复制时保留文件的原始属性,如文件所有者、时间戳、组、权限等。

cp -R source_dir destination_dir

将递归地将源目录复制到指定的目标,-R选项多用于目录的复制。

mv file1 file2

在 Linux 中 rename 这样的命令有的发行版本中并没有。因此通常情况下是使用 mv 将 file1 移动/重命名为 file2。

rm -i filename

在每次文件删除之前询问您进行确认。如果您是 LINUX 命令行的新用户,则应始终使用 rm -i。(您可以指定多个文件,文件名用空格隔开。)

rm -R dir-name

将递归删除目录 dir-name。

rm -rf dir-name

将递归删除目录 ,忽略不存在的文件,并且永远不会提示输入任何内容。使用此命令时要小心!您可以指定多个目录,目录名用空格隔开。

rmdir dir-name

如果目录 dir-name 为空,将删除该目录。此命令只能删除空目录。

mkdir dir-name

创建一个名为 dir-name 的目录。

mkdir -p dir-name/dir-name

创建目录层次结构。根据需要创建父目录(如果它们不存在)。您可以指定多个目录。

touch filename

如果文件名不存在,请创建一个文件名,否则将文件的时间戳更改为当前时间。

文件/目录权限和组

Command

Utility

chmod <specification> filename

更改文件权限。规范: u 用户,g 组,o 其他,+ 添加权限,- 删除,r 读取,w 写入,x 执行。

chmod -R <specification> dirname

递归更改目录的权限。在需要更改目录和该目录中的所有内容的权限时使用这个命令。

chmod go=+r myfile

为所有者和组添加读取权限。

chmod a +rwx myfile

允许所有用户读取、写入或执行 myfile

chmod go -r myfile

删除组和其他人的读取权限。

chown owner1 filename

将文件 filename 的所有权更改为用户 owner1。

chgrp grp_owner filename

将文件 filename 的主要组所有权更改为组 grp_owner。

chgrp -R grp_owner dir-name

将目录 dir-name 的主组所有权改为 group grp_owner 递归。要更改目录的组所有权以及该目录中的所有内容,请使用此命令。


如果您对我的文章有兴趣,我把我发布的文章都归档到我私人网站中去,欢迎访问 Corner 三的小角落 -- 首页 查阅之前的文章。

最近发表
标签列表