一个月彻底学会Linux --第三天
1.认识linux文件类型和根目录结构
我们可以使用ls -l命令查看一个文件的的具体信息,其中显示信息的第一个字符代表了文件类型
第一个字符 | 文件类型 | 说明 |
- | 普通文件 | 相当于Windows中的文本文档 |
d | 目录文件 | Windows中的文件夹 |
c | 字符设备文件 | 串口行设备 键盘 |
p | 管道文件 | 用于进程间的通信 |
s | 套接字文件 | 用于网络上的通信,用户可使用套接字进行数据通信 |
l |
软链接 | 类似于Windows的快捷方式 |
硬链接 | 只能引用同一系统中的文件,且源文件被删除或移动时,硬链接不会被破坏 | |
-b | 块设备文件 | 可供存储的接口设备 |
下面将就于软链接和硬链接进行具体分辨
软硬链接的主要分辨点就是在于:
当file1被删除或移动时,我们在file1下创建的硬链接和软链接还是否存在
而我们根据上面的说明可以看出软链接其实相当于Windows里的快捷方式
源文件被删除时,对应的快捷方式也会删除
而硬链接因为是基于inode而存在,所以源文件被删除时是不会消失的
下面进行软硬链接的具体操作:
[root@ls-Kk9vVGkm lengkun]# echo "hello" > file4
[root@ls-Kk9vVGkm lengkun]# cat file4
hello
[root@ls-Kk9vVGkm lengkun]# ln file4 file5
[root@ls-Kk9vVGkm lengkun]# cat file4
hello
[root@ls-Kk9vVGkm lengkun]# cat file5
hello
[root@ls-Kk9vVGkm lengkun]# ll file4
-rw-r--r-- 2 root root 6 Jul 14 11:06 file4
[root@ls-Kk9vVGkm lengkun]# ll file5
-rw-r--r-- 2 root root 6 Jul 14 11:06 file5
[root@ls-Kk9vVGkm lengkun]# rm -rf file4
[root@ls-Kk9vVGkm lengkun]# cat file5
hello
[root@ls-Kk9vVGkm lengkun]# ll file5
-rw-r--r-- 1 root root 6 Jul 14 11:06 file5
可以看到我们将file5 硬链接到 file4中,这时候的file4的节点数量为两个
于是我们删除源文件file4 ,file5是仍然可以访问的,但是file5的节点数量变为了一个
2.一级目录下的具体文件目录和功能
目录名 | 描述 |
/ | 根目录,linux中最上级的目录 |
/root | 超级用户的个人目录 |
/boot | 存放启动文件的目录 |
/home | 一般用户的个人目录 |
/bin | 存放普通用户的可执行程序或命令 |
/sbin | 类似于/sbin,存放的root用户的程序和命令 |
/lib | 存放库文件 |
/lib64 | 存放自身需要用到的64位共享函数库 |
/usr | 一般用户安装程序的目录 |
/opt |
提供给大型第三方使用的的牡蛎 |
/etc | 系统管理所需要用的配置文件和子目录 |
/var | 各种系统文件的日志 |
/run | 保存系统使用以来的系统信息文件 |
/dev | 所有的设备文件 |
/mnt |
为其他文件提供安装点 |
/tmp | 存放不同程序执行时产生的临时文件 |
/srv | 服务启动后需要访问的数据目录 |
/sys | 本目录将内核的一些信息映射文件,以供程序使用 |
/proc | 可以在该目录获取系统信息 |
3.有关重定向的讲解和说明使用
文件 | 描述符 |
标准输入 | 0 |
标准输出 | 1 |
标准错误输出 | 2 |
下面是关于重定向操作符:
输入重定向操作符:< <<
输出重定向操作符:> >>
2>> :重定向并追加数据到文件中
&> :将标准输出和标准错误输出都重定向
>& :所有传递输出的都传到下一步
4.创建/删除目录,创建/删除文件
创建目录
[root@ls-Kk9vVGkm /]# mkdir lengkun
[root@ls-Kk9vVGkm /]# ll
total 68
lrwxrwxrwx. 1 root root 7 May 11 2019 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 May 7 2022 boot
drwxr-xr-x 20 root root 3060 Jul 11 2022 dev
drwxr-xr-x. 94 root root 4096 Jul 11 2022 etc
drwxr-xr-x. 3 root root 4096 Jul 14 2022 home
drwxr-xr-x 2 root root 4096 Jul 14 12:12 lengkun
drwxr-xr-x 2 root root 4096 Jul 15 2022 lengun
lrwxrwxrwx. 1 root root 7 May 11 2019 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 May 11 2019 lib64 -> usr/lib64
drwx------. 2 root root 16384 Jan 26 2021 lost+found
drwxr-xr-x. 2 root root 4096 May 11 2019 media
drwxr-xr-x. 2 root root 4096 May 11 2019 mnt
drwxr-xr-x. 6 root root 4096 Jul 11 2022 opt
dr-xr-xr-x 179 root root 0 Jul 11 2022 proc
dr-xr-x---. 4 root root 4096 Jul 14 10:16 root
drwxr-xr-x 29 root root 860 Jul 11 2022 run
lrwxrwxrwx. 1 root root 8 May 11 2019 sbin -> usr/sbin
drwxr-xr-x. 2 root root 4096 May 11 2019 srv
dr-xr-xr-x 13 root root 0 Jul 11 2022 sys
drwxrwxrwt. 4 root root 4096 Jul 14 10:36 tmp
drwxr-xr-x. 12 root root 4096 Jan 26 2021 usr
drwxr-xr-x. 21 root root 4096 Jan 26 2021 var
创建文件
[root@ls-Kk9vVGkm /]# cd /lengkun
[root@ls-Kk9vVGkm lengkun]# touch file1
[root@ls-Kk9vVGkm lengkun]#
[root@ls-Kk9vVGkm lengkun]# ll
total 0
-rw-r--r-- 1 root root 0 Jul 14 12:14 file1
删除文件
[root@ls-Kk9vVGkm lengkun]# rm file1
rm: remove regular empty file 'file1'? y
删除目录
[root@ls-Kk9vVGkm lengkun]# cd /
[root@ls-Kk9vVGkm /]# rm -rf lengkun
[root@ls-Kk9vVGkm /]# ll
total 64
lrwxrwxrwx. 1 root root 7 May 11 2019 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 May 7 2022 boot
drwxr-xr-x 20 root root 3060 Jul 11 2022 dev
drwxr-xr-x. 94 root root 4096 Jul 11 2022 etc
drwxr-xr-x. 3 root root 4096 Jul 14 2022 home
drwxr-xr-x 2 root root 4096 Jul 15 2022 lengun
lrwxrwxrwx. 1 root root 7 May 11 2019 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 May 11 2019 lib64 -> usr/lib64
drwx------. 2 root root 16384 Jan 26 2021 lost+found
drwxr-xr-x. 2 root root 4096 May 11 2019 media
drwxr-xr-x. 2 root root 4096 May 11 2019 mnt
drwxr-xr-x. 6 root root 4096 Jul 11 2022 opt
dr-xr-xr-x 182 root root 0 Jul 11 2022 proc
dr-xr-x---. 4 root root 4096 Jul 14 10:16 root
drwxr-xr-x 29 root root 860 Jul 11 2022 run
lrwxrwxrwx. 1 root root 8 May 11 2019 sbin -> usr/sbin
drwxr-xr-x. 2 root root 4096 May 11 2019 srv
dr-xr-xr-x 13 root root 0 Jul 11 2022 sys
drwxrwxrwt. 4 root root 4096 Jul 14 10:36 tmp
drwxr-xr-x. 12 root root 4096 Jan 26 2021 usr
drwxr-xr-x. 21 root root 4096 Jan 26 2021 var
五,使用cp命令
参数 | 说明 |
-r或-R | 递归处理,旗下的文件和子目录也一起复制 |
-f | 强行复制,不管目录或文件下下是否存在文件 |
-p | 保留文件属性 |
-l | 对复制文件建立硬链接,是创建而不是复制 |
-b | 覆盖已存在的文件前,将目标文件备份 |
-v | 详细显示复制时的命令操作 |
注:所有cp命令使用时,必须使用-p参数否则无法复制
下面进行具体演示
复制文件粘贴并且重命名复制文件到目录重命名
[root@ls-Kk9vVGkm lengkun]# cp file1 fil2
[root@ls-Kk9vVGkm lengkun]# ll
total 8
-rw-r--r-- 1 root root 35 Jul 14 12:33 fil2
-rw-r--r-- 1 root root 35 Jul 14 12:32 file1
复制目录到目录
[root@ls-Kk9vVGkm /]# cp -pr lengkun lengun
[root@ls-Kk9vVGkm /]# ll
total 68
lrwxrwxrwx. 1 root root 7 May 11 2019 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 May 7 2022 boot
drwxr-xr-x 20 root root 3060 Jul 11 2022 dev
drwxr-xr-x. 94 root root 4096 Jul 11 2022 etc
drwxr-xr-x. 3 root root 4096 Jul 14 2022 home
drwxr-xr-x 2 root root 4096 Jul 14 12:33 lengkun
drwxr-xr-x 3 root root 4096 Jul 14 12:35 lengun
lrwxrwxrwx. 1 root root 7 May 11 2019 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 May 11 2019 lib64 -> usr/lib64
drwx------. 2 root root 16384 Jan 26 2021 lost+found
drwxr-xr-x. 2 root root 4096 May 11 2019 media
drwxr-xr-x. 2 root root 4096 May 11 2019 mnt
drwxr-xr-x. 6 root root 4096 Jul 11 2022 opt
dr-xr-xr-x 180 root root 0 Jul 11 2022 proc
dr-xr-x---. 4 root root 4096 Jul 14 12:32 root
drwxr-xr-x 29 root root 860 Jul 11 2022 run
lrwxrwxrwx. 1 root root 8 May 11 2019 sbin -> usr/sbin
drwxr-xr-x. 2 root root 4096 May 11 2019 srv
dr-xr-xr-x 13 root root 0 Jul 11 2022 sys
drwxrwxrwt. 4 root root 4096 Jul 14 10:36 tmp
drwxr-xr-x. 12 root root 4096 Jan 26 2021 usr
drwxr-xr-x. 21 root root 4096 Jan 26 2021 var
[root@ls-Kk9vVGkm /]# cd /lengun
[root@ls-Kk9vVGkm lengun]# ll
total 4
drwxr-xr-x 2 root root 4096 Jul 14 12:33 lengkun
[root@ls-Kk9vVGkm lengun]# ll lengkun
total 8
-rw-r--r-- 1 root root 35 Jul 14 12:33 fil2
-rw-r--r-- 1 root root 35 Jul 14 12:32 file1
复制文件到目录且不改变文件属性
[root@ls-Kk9vVGkm lengkun]# cp -p file1 /lengun
[root@ls-Kk9vVGkm lengkun]# cd /lengun
[root@ls-Kk9vVGkm lengun]# ll
total 8
-rw-r--r-- 1 root root 35 Jul 14 12:32 file1
drwxr-xr-x 2 root root 4096 Jul 14 12:33 lengkun
一个月彻底学会Linux --第三天相关推荐
- seo从入门到精通_新手学习SEO一个月能学会吗?
很多刚接触学习SEO的朋友都会问:"新手学习SEO需要多久,一个月能学会SEO吗?"这个问题,首先我想在这里问的:"学会"是怎样的一个定义?如果你想学习编辑刚刚 ...
- 普通人利用寒假一个月可以学会的四个赚钱技能
前言 今年疫情加上又要寒假了,大学生在家时间日益变长,甚至有的同学大学四年只上了13个月的情况出现,在家这么长时间,又不想空呆着,要是能在家里做点副业,赚点钱补贴家里也好. 那么我告诉你如果说当下什么 ...
- 历经一个月拿下<Linux鸟哥的私房菜>(基础篇)
我的笔记链接会不断更新 word文件(126条消息) 学linux这篇就够了-Linux文档类资源-CSDN文库 完全适用Centos:如遇到特定符号 指代*#124;----- | ...
- 苦尽甘来 一个月学通JavaWeb(三十五 数据库)
夜光序言: 致 我深爱的 二次元 那个~~这辈子不会忘记的 有一种心碎,叫做<萤火之森> 有一种舍弃,叫做<进击的巨人> 有一种温暖,叫做<夏目友人帐> 有一种治愈 ...
- 编程大神都在用的6个编程网站,一个月轻松学会编程,好用到不行
现在随着很多公司都将业务慢慢的转移到了网站上,很多朋友就想学习IT行业,那么到底哪些大神们到底使用的什么软件呢?今天就为大家介绍6个编程大神都在使用的编程网站,想要提高从现在开始! 1.Codecad ...
- Java培训四个月能学会吗?
我觉得,完全零基础学不太会-太难了. 你可以花8个月去自学,如果时间允许的话.我就是这样做,也找到了工作. 学习路线: 这篇文章是为了介绍自己自学用过的Java视频资料.全部来自传智播客旗下的黑马程序 ...
- 一个月学会Python的Quora指南和资料放送
欢迎关注天下博客:http://blog.genesino.com/2017/12/python-quora/ 如何一个月学会使用Python 文章翻译自Quora上的回帖,略有改动.原文链接:htt ...
- 一个月学会Python,零基础入门数据分析
在数据分析领域,python是一个绕不开的知识和工具,如果不会用python就很难说自己会数据分析,但是最近很多想要入门数据分析的小白经常问我,Python怎么入门?Python虽然被称作是" ...
- 【历史上的今天】3 月 29 日:“机器人三定律”问世;电脑动画首次获得奥斯卡;Caldera Linux 沉浮史
整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 3 月 29 日,在 5 年前的今天,全球领先的移动互联网第三方数据挖掘和整合营销机构 iiMedi ...
最新文章
- 微软(MICROSOFT)试用版企业软件下载地址
- 1077: 字符串加密
- 成为男人眼中魅力女人的十大要素
- golang interface{} 转 struct结构体
- java byte 正数最大_为什么Java byte 类型的取值范围是-128~127
- windows添加删除静态路由
- datagrid wpf 刷新数据_c# – WPF Datagrid-自动刷新
- 《Linux内核设计与实现》读书笔记(十八)- 内核调试
- 【SpringBoot】添加自定义浏览器图标 favicon.ico
- 【初等数论】指数、原根与不定方程
- 计算机保研和考研复试相同吗,保研与考研有什么区别?
- 生鲜电商/社区团购/团长中心、地址管理、自提点、订单列表、限时折扣、预售、会员储值、钱包、同城配送、门店自提、团长自提、采购、履约、仓储、运输、财务、移动端电商原型、rp源文件、axure电商原型
- 并行算法第一讲:概念及目标
- VBA Mysql 类
- android+qq底部界面,Android 高仿QQ 界面滑动效果
- JME3中级手册--最佳实践1
- zabbix保姆级安装教程
- 上海财经应用统计考python_2021年上海财经大学应用统计硕士考研经验分享
- 2019年度十大网络小说:玄幻小说独占六部,都市小说一本超神
- 笔记本连接显示器后没有声音_win7系统电脑连接HDMI显示器后没声音的处理方法...