0

0

Linux命令基本格式及目录处理命令

高洛峰

高洛峰

发布时间:2016-11-14 12:38:31

|

1729人浏览过

|

来源于php中文网

原创

命令提示符

[root@localhost ~]#

root:当前登录用户
localhost:主机名
~:当前所在的目录,此处为“家”目录
#:root超级用户的提示符,如果是普通用户,则为 $

命令格式

命令 [选项] [参数]

中括号 [] 表示可选

查询目录中的内容:ls

ls [选项] [文件或目录]

选项:
-a : 显示所有文件,包括隐藏文件
-l : 显示详细信息
-d : 查看目录属性
-h : 人性化显示文件大小
-i : 显示inode

根据以上选项,敲入命令,显示结果分别如下:

[root@localhost ~]# lsanaconda-ks.cfg  test
[root@localhost ~]# ls -a.  ..  anaconda-ks.cfg  .bash_history  .bash_logout  .bash_profile  .bashrc  .cache  .config  .cshrc  .tcshrc  test
[root@localhost ~]# ls -l总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Nov 12 19:26 test
[root@localhost ~]# ls -l anaconda-ks.cfg -rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg
[root@localhost ~]# ls -ld test/drwxr-xr-x. 2 root root 6 Nov 12 19:26 test/
[root@localhost ~]# ls -lh总用量 4.0K
-rw-------. 1 root root 2.7K Nov 10 02:51 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Nov 12 19:26 test
[root@localhost ~]# ls -i71259104 anaconda-ks.cfg  36099565 test

请注意观察 ls -l 与 ls -lh 命令的结果的区别

这里需要解释一下:

-rw-------. 1 root root 2.7K Nov 10 02:51 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Nov 12 19:26 test

首先第一个符号 “-”(引号内的-),表示文件类型(常用的有三种,即-表示文件,d表示目录,l表示软链接文件),此外还有不常用的,为块设备文件,字符设备文件、套接字文件、管理文件。

在上述中,我们可以看到 anaconda-ks.cfg 是一个文件,而 test 是一个目录(可理解为windows的文件夹的概念)。

其次,除去第一个符号,我们来看rw-------,一共有九个字符,需分为三组,分别为rw-,---,---,每个组按照顺序分别表示u所有者,g所属组,o其他人的权限。在上述中,分别对应为 root,root。即第一个root表示所有者权限为root权限,第二个root表示所属组的权限也是root权限,对于其他人,则无所谓的权限可言。

其中,r表示可读,w表示可写,x表示执行的权限。

为了更加明白,对于 anaconda-ks.cfg 这个文件,这里列一个表格:

bVD4qj.png

那么,对于 test 这个文件 rwxr-xr-x,请读者自行判断它的权限。

在九个字符之后的点 “.”,表示ACL权限,之后的数字 1 表示引用计数,比如一个文件有一个软链接(类似windows快捷方式),那么它的引用计数就是2。

root 后面的2.7k表示文件的大小,再后面表示日期,最后是文件的名称。

目录处理命令

创建目录:mkdir

mkdir -p [目录名]

-p : 递归创建

[root@localhost ~]# lsanaconda-ks.cfg  test

[root@localhost ~]# mkdir otherFolder[root@localhost ~]# lsanaconda-ks.cfg  otherFolder  test

[root@localhost ~]# mkdir folder_2/test_2mkdir: 无法创建目录"folder_2/test_2": 没有那个文件或目录

[root@localhost ~]# mkdir -p folder_2/test_2[root@localhost ~]# lsanaconda-ks.cfg  folder_2  otherFolder  test

[root@localhost ~]# ls folder_2/test_2

如上所示,mkdir 不加选项 -p 时,可以创建一个空目录,但是无法递归创建一个包含子目录的目录。加上 -p 即可递归创建。

切换所在目录:cd

cd [目录]

操作:

cd ~ : 进入当前用户的家目录

cd-: 进入上次目录

cd.. : 进入上一级目录

cd : 回到家目录

[root@localhost ~]# lsanaconda-ks.cfg  folder_2  otherFolder  test

[root@localhost ~]# cd /folder_2/test_2[root@localhost test_2]# cd[root@localhost ~]# cd -/root/folder_2/test_2

[root@localhost test_2]# cd ../../otherFolder[root@localhost otherFolder]# cd ..[root@localhost ~]#

注意理清概念:相对路径和绝对路径

绝对路径:从根目录一级级找下去,需要写全路径

[root@localhost ~]# cd folder_2/test_2
[root@localhost test_2]#

相对路径:参照当前所在目录进行查找

[root@localhost test_2]# cd ../../otherFolder
[root@localhost otherFolder]#

查询所在目录位置:pwd

pwd

可以说是最简单的命令了,查询所在目录的位置

[root@localhost ~]# pwd/root

[root@localhost ~]# lsanaconda-ks.cfg  folder_2  otherFolder  test
[root@localhost ~]# cd folder_2/[root@localhost folder_2]# lstest_2
[root@localhost folder_2]# cd test_2/[root@localhost test_2]# pwd/root/folder_2/test_2

删除空目录:rmdir

rmdir [目录名]

只能删除空目录,这个命令用得比较少。

[root@localhost ~]# lsanaconda-ks.cfg  folder_2  otherFolder  test

[root@localhost ~]# rmdir otherFolder[root@localhost ~]# lsanaconda-ks.cfg  folder_2  test

[root@localhost ~]# rmdir folder_2rmdir: 删除 "folder_2" 失败: 目录非空
[root@localhost ~]#

删除文件或目录:rm

rm -rf [文件或目录]

r 表示可以同时删除文件和目录,f表示强制删除

如果不添加任何选项,那么只可以删除文件,删除时提示是否确认删除

如果只添加选项 -r,那么可以删除文件也可以删除目录,删除时提示是否确认删除

如果添加了选项 -rf,那么将不做任何提示删除文件或目录

[root@localhost ~]# lsabc.txt  anaconda-ks.cfg  folder_2  test

[root@localhost ~]# rm abc.txtrm:是否删除普通空文件 "abc.txt"?y

[root@localhost ~]# rm testrm: 无法删除"test": 是一个目录
[root@localhost ~]# rm -r testrm:是否删除目录 "test"?y

[root@localhost ~]# lsanaconda-ks.cfg  folder_2

[root@localhost ~]# rm -rf folder_2[root@localhost ~]# lsanaconda-ks.cfg
[root@localhost ~]#

复制命令:cp

cp [选项] [原文件或目录] [目标目录]

选项:
-r : 复制目录
-p : 同时复制文件属性
-d : 若源文件是链接文件,则复制链接属性
-a : 包含以上所有选项,相当于 -rpd

在[目标目录]后面加上文件名,就是改名复制。

PHP+MySQL商业网站架设实务
PHP+MySQL商业网站架设实务

第1章Linux入门   1-1操作系统的特性   1-2安装设置   1-2-1硬盘分区   1-2-2设置LILO   1-2-3网络地址和时区设置   l-2-4设置系统管理员及一般用户的帐号密码   1-2-5系统安全认证   l-2-6选取安装套件   1-2-7设置显示卡及测试Xwindows   l-2-8开始安装套件   l-3常用命令   l-4网络基本设

下载
[root@localhost ~]# lsanaconda-ks.cfg  bbc.txt  folder_a  folder_b

[root@localhost ~]# cp bbc.txt folder_a[root@localhost ~]# ls folder_a/bbc.txt

[root@localhost ~]# cp folder_a folder_bcp: 略过目录"folder_a"[root@localhost ~]# cp -r folder_a folder_b[root@localhost ~]# ls folder_bfolder_a  test_1

[root@localhost ~]# ll总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg
-rw-r--r--. 1 root root    0 Nov 13 17:21 bbc.txt
drwxr-xr-x. 2 root root   20 Nov 13 17:38 folder_a
drwxr-xr-x. 4 root root   34 Nov 13 17:39 folder_b

[root@localhost ~]# ll folder_a总用量 0-rw-r--r--. 1 root root 0 Nov 13 17:38 bbc.txt

[root@localhost ~]# cp -a bbc.txt folder_b[root@localhost ~]# ll folder_b总用量 0-rw-r--r--. 1 root root  0 Nov 13 17:21 bbc.txt
drwxr-xr-x. 2 root root 20 Nov 13 17:39 folder_a
drwxr-xr-x. 2 root root  6 Nov 13 17:38 test_1
[root@localhost ~]#

这里需要解释一下的是,在原文件 bbc.txt 中,其修改时间为 17:21,在普通复制下,它的时间这个属性是不会被复制,我们可以看到复制后的bbc.txt的时间为17:38,如果需要连同属性一起复制,那么就加上 -pd 或者 直接 -a,如上所示,我们把bbc.txt复制到folder_b,这时我们查看属性的时候,时间属性和原属性是一致的。

在上述命令中,ll 是 ls -l 的简写。

剪切或改名命令:mv

mv [原文件或目录] [目标目录]

如果原文件或者目录 与 目标目录在同一个目录下,那么就是重命名

如果不在同一个目录下,那么就是剪切

通过以下实践理解:

[root@localhost ~]# lsanaconda-ks.cfg  bbc.txt

[root@localhost ~]# mv bbc.txt abc.txt[root@localhost ~]# lsabc.txt  anaconda-ks.cfg

[root@localhost ~]# mkdir test[root@localhost ~]# lsabc.txt  anaconda-ks.cfg  test

[root@localhost ~]# mv abc.txt test/[root@localhost ~]# lsanaconda-ks.cfg  test

[root@localhost ~]# ls test/abc.txt
[root@localhost ~]#

链接命令:ln

ln -s [原文件] [目标文件]

生成链接文件
-s : 创建软连接

硬链接的特征:

拥有相同 i 节点和存储block块,可以看做是同一个文件

可通过i节点识别,i节点是相同的

不能跨分区

不能针对目录使用

通过上述命令,可以理解为为某个内容添加一个标签,通过打开这个标签就可以进入这个内容,硬连接,即再生成一个标签,同样可以通过这个标签进入这个内容。

如果内容被修改,那么不管从硬链接的哪个文件进入,都是被修改的。

软链接的特征:

类似windows的快捷方式

软链接拥有自己的i节点和block块,但是数据块只保存原文件的文件名和I节点号,并没有实际的文件数据

lrwxrwxrwx l为软链接(软链接的权限都为rwxrwxrwx,这只是软链接本身的权限)

修改任意文件,另一个都改变

删除原文件,软链接不能用(和windows的快捷方式一样)

硬链接:

[root@localhost ~]# lsanaconda-ks.cfg
[root@localhost ~]# mkdir folder[root@localhost ~]# lsanaconda-ks.cfg  folder
[root@localhost ~]# touch bbb.txt[root@localhost ~]# lsanaconda-ks.cfg  bbb.txt  folder
[root@localhost ~]# ln bbb.txt folder/ccc.txt[root@localhost ~]# ll folder/总用量 0-rw-r--r--. 2 root root 0 Nov 13 18:08 ccc.txt
[root@localhost ~]# ll bbb.txt -rw-r--r--. 2 root root 0 Nov 13 18:08 bbb.txt

软链接:

[root@localhost ~]# mkdir folder_b[root@localhost ~]# ln -s bbb.txt folder_b/eee.txt[root@localhost ~]# ll 总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg
-rw-r--r--. 2 root root    0 Nov 13 18:10 bbb.txt
drwxr-xr-x. 2 root root   20 Nov 13 18:09 folder
drwxr-xr-x. 2 root root   20 Nov 13 18:11 folder_b
[root@localhost ~]# ll folder_b总用量 0lrwxrwxrwx. 1 root root 7 Nov 13 18:11 eee.txt -> bbb.txt
[root@localhost ~]# rm -rf bbb.txt [root@localhost ~]# ll folder_b总用量 0lrwxrwxrwx. 1 root root 7 Nov 13 18:11 eee.txt -> bbb.txt

删除了原文件,软链接的箭头目标为红色一闪一闪,表示找不到目标文件。

常用目录作用

[root@localhost ~]# ls /
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  temp  tmp  usr  var

说明:

/ 根目录

/bin 命令保存目录(普通用户权限)

/sbin 命令保存目录(root权限)

/boot 启动目录,包含启动相关文件,和开机有关

/dev 设备文件保存目录

/etc 配置文件保存目录

/home 普通用户家目录

/lib 系统库保存目录

/mnt 系统挂载目录

/media 挂载目录(常用于光盘挂载)

/root 超级用户家目录

/tmp 临时目录

/proc 直接写入内存的

/sys 直接写入内存的

/usr 系统软件资源目录

/var 系统相关文档内容

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

178

2026.01.28

包子漫画在线官方入口大全
包子漫画在线官方入口大全

本合集汇总了包子漫画2026最新官方在线观看入口,涵盖备用域名、正版无广告链接及多端适配地址,助你畅享12700+高清漫画资源。阅读专题下面的文章了解更多详细内容。

35

2026.01.28

ao3中文版官网地址大全
ao3中文版官网地址大全

AO3最新中文版官网入口合集,汇总2026年主站及国内优化镜像链接,支持简体中文界面、无广告阅读与多设备同步。阅读专题下面的文章了解更多详细内容。

79

2026.01.28

php怎么写接口教程
php怎么写接口教程

本合集涵盖PHP接口开发基础、RESTful API设计、数据交互与安全处理等实用教程,助你快速掌握PHP接口编写技巧。阅读专题下面的文章了解更多详细内容。

2

2026.01.28

php中文乱码如何解决
php中文乱码如何解决

本文整理了php中文乱码如何解决及解决方法,阅读节专题下面的文章了解更多详细内容。

4

2026.01.28

Java 消息队列与异步架构实战
Java 消息队列与异步架构实战

本专题系统讲解 Java 在消息队列与异步系统架构中的核心应用,涵盖消息队列基本原理、Kafka 与 RabbitMQ 的使用场景对比、生产者与消费者模型、消息可靠性与顺序性保障、重复消费与幂等处理,以及在高并发系统中的异步解耦设计。通过实战案例,帮助学习者掌握 使用 Java 构建高吞吐、高可靠异步消息系统的完整思路。

8

2026.01.28

Python 自然语言处理(NLP)基础与实战
Python 自然语言处理(NLP)基础与实战

本专题系统讲解 Python 在自然语言处理(NLP)领域的基础方法与实战应用,涵盖文本预处理(分词、去停用词)、词性标注、命名实体识别、关键词提取、情感分析,以及常用 NLP 库(NLTK、spaCy)的核心用法。通过真实文本案例,帮助学习者掌握 使用 Python 进行文本分析与语言数据处理的完整流程,适用于内容分析、舆情监测与智能文本应用场景。

24

2026.01.27

拼多多赚钱的5种方法 拼多多赚钱的5种方法
拼多多赚钱的5种方法 拼多多赚钱的5种方法

在拼多多上赚钱主要可以通过无货源模式一件代发、精细化运营特色店铺、参与官方高流量活动、利用拼团机制社交裂变,以及成为多多进宝推广员这5种方法实现。核心策略在于通过低成本、高效率的供应链管理与营销,利用平台社交电商红利实现盈利。

122

2026.01.26

edge浏览器怎样设置主页 edge浏览器自定义设置教程
edge浏览器怎样设置主页 edge浏览器自定义设置教程

在Edge浏览器中设置主页,请依次点击右上角“...”图标 > 设置 > 开始、主页和新建标签页。在“Microsoft Edge 启动时”选择“打开以下页面”,点击“添加新页面”并输入网址。若要使用主页按钮,需在“外观”设置中开启“显示主页按钮”并设定网址。

72

2026.01.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8万人学习

Git 教程
Git 教程

共21课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号