红帽秘笈,第三章了解linux分区和常见命令

了解Linux的分区和目录的关系
了解Linux中常见命令的使用
了解重定向的使用
了解管道的使用
在Windows中,每个分区都要有盘符才能够正常使用,如果一个分区的盘符被删除了,
则无法使用这个分区
但是用于表示盘符的字母是有限的,如果最后一个字母Z也被占用完,那么多于的分区就
没有盘符可用了。
假设将D盘、E盘、F盘这几个分区的盘符全部去掉,那么如何使用这些分区呢?可以在C
盘下面创建一些文件夹,然后把这些分区装在这些文件夹中
例如,在C盘中创建一个文件夹“disk”,把第二个分区(原D盘)装在c:\disk文件夹
中,那么以后访问c:\disk其实访问的就是第二个分区了。以此类推,我们创建c:\edisk、
c:\fdisk,然后把第三个分区装在c:\edisk文件夹中,把第四个分区装在c:\fdisk文件夹中。
把某个分区装在某个文件夹中,我们把这个过程叫做挂载,这个装了其它分区的文件夹,
叫做挂载点。 当打开“我的电脑”之后,我们只能看到C盘,看不到其他的分区。但是访问C盘下面对
应的目录,就能访问到对应的分区
创建目录(文件夹)是命令mkdir,语法如下 

 [root@localhost ~]# mkdir dir

 或

[root@localhost ~]# mkdir -p dir1/dir2

 

这里的意思是在dir1下创建dir2,-p的意思是,如果dir1不存在,则会把dir1也创建出
来。
使用blab用户登录,在当前目录下创建目录xx
[root@localhost ~]# mkdir xx

 在当前目录下的目录11创建目录22

[root@localhost ~]# mkdir 11/22

 删除目录的命令是rmdir

 如果目录11中还有目录22,执行命令删除目录11.

rmdir    11

 

 

因为目录11中还有目录22,所以rmdir无法直接删除目录11,需要把目录11中的内容全部
清除才能删除目录11。这里可以利用后面讲的rm -rf命令来删除。

 

 cd 的主要作用是切换到其他目录,用法如下

cd 路径
这里的路径可以是相对路径也可以是绝对路径,如果没有明确地指定路径,则是当前路
径,如
cd test
test就表示当前路径下的一个目录,这种写法等同于

 

 查看这个目录的结构

[root@localhost ~]# tree aa

 进入目录11,命令如下

cd aa/bb/cc/dd/ee/ff/11

pwd

这里cd后面直接跟aa,表示当前目录下的aa。
如果想切换到目录22,使用绝对路径的写法如下
cd /home/blab/aa/bb/cc/dd/ee/ff/22/
pwd

 想需要拷贝文件或目录,可以使用cp命令,cp的语法如下

如果/path2/yy是一个目录,意思把/path1/xx拷贝到/path2/yy中。如果/path2/yy不存
在或是一个文件,意思是把/path1/xx拷贝到/path2中,命名为yy。
下面的操作都是使用root用户做的,把/ect/hosts拷贝到/opt目录中。
这里/opt是一个目录,那么这句话的意思是把/etc/hosts拷贝到/opt目录中。查看一
下/opt中的内容
ls /opt/

把/etc/hosts拷贝到/opt中,命名为xx。

cp /etc/hosts /opt/xx

ls /opt/ 

 原来并不存在/opt/xx,上面的操作是把/etc/hosts拷贝到/opt中,命名为xx

mkdir /opt/11

cp /etc/hosts /opt/11

先创建目录/opt/11,因为/opt/11是一个目录,所以这里把/etc/hosts拷贝到/opt/11
中,而不是把/etc/hosts拷贝到/opt之后命名为11

 

因为/opt/xx不是一个目录,所以这句话的意思是把/etc/hosts拷贝到/opt目录并命名为
xx。因为/opt/xx已经存在了,所以会问是否覆盖,如果此时直接按【Enter】键,则是n的
意思,即不覆盖。如果要覆盖必须输入“y”,按【Enter】键。
拷贝一个文件,相当于新创建了一个文件。除文件内容相同外,文件的时间显示的也是创
建这个文件的时间。
ls -l /etc/hosts /opt/xx

拷贝一个文件时,如果想把文件的属性一起拷贝过去,就需要加上-p选项。

cp -p /etc/hosts /opt/xx

ls -l /etc/hosts /opt/xx 

这样看起来,时间也都一致了。
下面用cp命令拷贝目录,把/etc拷贝到当前目录中。

 

 此处没有成功,因为/etc是一个目录,cp需要加上 -r 选项才行,-r 表示递归的意思。

rm -rf etc/

 

在Windows中,可以通过某文件的图标或文件后缀,来判断这是一个什么类型的文件,
如果是可执行文件,还是一个文本文件。但在Linux中,很多文件类型往往和后缀没有关
系,所以我们要判断一个文件是什么类型的文件可以用file来判断。file的用法如下

 

 判断/boot/initramfs-4.18.0-348.el8.x86_64.img的文件类型,命令如下。

wc用于统计文件的行数,单词数、字符数,先查看/etc/hosts中的内容

 

然后用wc统计/etc/hosts的信息

 

 

第一个数字2表示/etc/hosts有2行。第二个数字10表示/etc/hosts有10个单词,这里单词
指的是以空格、【TAB】、逗号隔开的字符。第三个数字158表示/etc/hosts一共有158个字
符,这里统计字符数包括了空格及行末我们看不到的换行符。
以上几个信息也可以单独查看,wc -l可以查看文件的行数

 wc -c 可以查看文件的字符数。

wc -c /etc/hosts

 

执行一条命令时,命令的结果总是输出到屏幕上的。如果希望把这个命令的结果保存在某
个文件中而不是输出到屏幕上,就要用到重定向了。重定向就是重新定位输出的方向,能用
到的符号包括 “>” “>>” “2>” "2>>” “&>” “&>>”,这里不要把“”当作大
于号,当作“箭头”就很容易理解了。
这里没有重定向,uname的结果直接输出到屏幕上,而是写入当前目录中aa.txt也是不存
在的。

 

可以看到,aa.txt中的内容就是uname命令的结果。下面在输入一个命令重定向到aa.txt
中,

 cal 的结果并没有任何输出,因为重定向写入aa.txt中了。

 

如果/path/file不存在,则会自动创建出来;如果存在,命令的结果会在 /path/file原有内
容的后面接着写,并不清空此文件的内容,这种写法叫作追加写。
下面我们执行两次uname,通过“>>”写进aa.txt 中

 

管道可以把多个命令连接起来,管道前面命令的结果作为管道后面命令的参数。
例如,要查看/etc/passwd的第6行到第10行的内容,命令如下
先用head获取l/etc/passwd的前10行,然后通过管道传递给tail,获取/etc/passwd前10
行的后5行,也就是从第6行到第10行的内容。
又如,要获取网卡ens160含有IP的那行内容

 

今天的教学到此就结束了,我们明天在见!

  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值