Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)

第11章 重定向和文件的查找
第12章 磁盘介绍及管理
第13章 Linux文件系统结构
第14章 RAID的原理与搭建
第15章 LVM管理和SSM工具使用

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)

  • 第11章 重定向和文件的查找
    • 11.1 文件描述符
      • 1.标准输入输出说明,如图11-2所示
      • 2.查看一个进程打开了哪些文件
    • 11.2 重定向的含义及管道、tee命令的使用
      • 11.2.1 输入重定向
      • 11.2.2 输出重定向
      • 11.2.3 EOF的使用
      • 11.2.4 错误重定向
      • 11.2.5 null黑洞和zero空文件
      • 11.2.6 &> 和 >& 符号
      • 11.2.7 管道 | 的使用
      • 11.2.8 tee命令(了解)
    • 11.3 查找文件的常用命令及应用
      • 11.3.1 查看文件常用命令
      • 11.3.2 locate命令
      • 11.3.3 grep命令
      • 11.3.4 find命令
    • 11.4 命令判断——3个特殊符号";" "&&" "||"
  • 第12章 磁盘介绍及管理
    • 12.1 常见接口类型磁盘讲解
      • 12.1.3 磁盘种类
          • 1.按工作原理分类
          • 2.按磁盘接口类型应用服务器分类
      • 12.1.4 常见磁盘及存储设备介绍
          • 2.SAS接口的SSD磁盘
          • 3.假SAS接口磁盘
          • 4.存储设备
    • 12.2 磁盘分区工具和挂载
      • 12.2.1 磁盘分区认识
      • 12.2.2 各种分区的作用
      • 12.2.3 使用fdisk命令管理磁盘分区
      • 12.2.4 使用gdisk命令管理磁盘分区
  • 第13章 Linux文件系统结构
    • 13.1 磁盘结构
      • 13.1.1 磁盘结构简介
      • 13.1.2 簇和block
    • 13.2 文件系统结构
      • 13.2.1 文件系统
      • 13.2.3 inode的大小
      • 13.2.5 设定簇和block的大小
    • 13.3 文件的硬链接和软链接
    • 13.4 实战1:使用ln命令创建文件的链接
      • 13.4.1 创建硬链接
      • 13.4.2 创建软链接
      • 13.4.3 inode的特殊作用
  • 第14章 RAID的原理与搭建
    • 14.1 RAID概念
      • 14.1.1 RAID常见的类型
      • 14.1.2 RAID 0的工作原理
      • 14.1.3 RAID 1的工作原理
      • 14.1.4 RAID 5的工作原理
      • 14.1.6 RAID磁盘失效处理
          • 1.热备(HotSpare)
          • 2.热插拔(HotSwap)
  • 第15章 LVM管理和SSM工具的使用
    • 15.1 LVM的基本概念
      • 15.1.1 LVM的工作原理
      • 15.1.2 LVM常用的术语
    • 15.2 创建LVM的基本步骤
    • 15.3 SSM工具
      • 15.3.1 SSM简介
      • 15.3.2 实战:为公司的邮件服务器创建基于LVM的邮件存储池
          • 1.将sdb上所有VG信息删除

第11章 重定向和文件的查找

Linux下一切皆文件,包括所有的程序和一些设备的访问入口都展示为文件。

Linux中的文件分为普通文件、目录文件、链接文件和设备文件四种类型。

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)_第1张图片

11.1 文件描述符

文件描述符是内核为了高效管理已被打开的文件所创建的索引,用于指向被打开的文件,所有执行I/O操作的系统调用都通过文件描述符;文件描述符是一个简单的非负整数,用以标明每一个被进程所打开的文件,程序刚刚启动的时候,第一个打开的设备文件是0,第二个是1,依此类推。也可以理解为是文件的身份ID。

用户通过操作系统处理信息的过程中,使用的交互设备文件(键盘,鼠标,显示器)如图所示。

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)_第2张图片

1.标准输入输出说明,如图11-2所示

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)_第3张图片
图11-2 标准输入、输出

  • STDIN标准输入,默认的设备是键盘,文件编号为0。
  • STDOUT标准输出,默认的设备是显示器,文件编号为1,也可以重定向到文件。
  • STDERR标准错误输出,默认的设备是显示器,文件编号为2,也可以重定向到文件。

2.查看一个进程打开了哪些文件

语法:ll /proc/PID/fd, 该文件下专门存文件描述符。

[root@utahstu2 utah]# ps -ef | grep vim
root      34007   2994  0 11月01 pts/0  00:00:00 vim test.txt
root      78577   2994  0 19:11 pts/0    00:00:00 grep --color=auto vim
[root@utahstu2 utah]# ll /proc/34007/fd   #查看vim进程打开的文件
总用量 0
lrwx------. 1 root root 64 113 19:12 0 -> /dev/pts/0
lrwx------. 1 root root 64 113 19:12 1 -> /dev/pts/0
lrwx------. 1 root root 64 113 19:11 2 -> /dev/pts/0
lrwx------. 1 root root 64 113 19:12 4 -> /home/utah/utah/.test.txt.swp

这些0、1、2、4就是文件的描述符。一个进程启动时,都会打开3个文件:标准输入、标准输出和标准错误输出。这3个文件分别对应的文件描述符为0、1和2,也就是宏替换STDIN_FILENOSTDOUT_FILENOSTDERR_FILENO

⚠️注意:对文件描述符的操作就是对文件本身的操作,可以直接通过操作文件描述符来修改文件。

例11.2:查看和临时设置一个进程最多可以打开几个文件,也就是说,一个进程可以打开的文件描述符的个数限制。

[utah@utahstu2 ~]$ ulimit -n        #查看一个进程最多可以同时打开的文件数1024
[utah@utahstu2 ~]$ ulimit -n 2048   #修改一个进程最多可以同时打开的文件数2048.
[utah@utahstu2 ~]$ ulimit -n
2048

11.2 重定向的含义及管道、tee命令的使用

11.2.1 输入重定向

定义:输入重定向主要更改程序的数据输入方式。

11.2.1 输入重定向更改程序的数据输入方式。

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)_第4张图片

11.2.2 输出重定向

定义:输出重定向是指将命令的正常输出结果保存到指定的文件中,而不是直接显示在显示器的屏幕上输出重定向使用“>”“>>”操作符号。

语法:

> 文件名,表示将标准输出的内容,写到后面的文件中,如果此文件名已经存在,将会覆盖原文件中的内容,若此文件不存在,则会以此文件名写新建文件。

>> 文件名,表示将标准输出的内容,以追加形式写到后面的文件中。若此文件不存在,则会以此文件名新建该文件。

Eg. 查看当前主机的CPU的类型并保存到cpu.txt文件中(而不是直接显示到屏幕上)。

[utah@utahstu2 utah]$ cat /proc/cpuinfo > cpuinfo.txt

Eg. 清空一个文件

[utah@utahstu2 utah]$ > test.txt 

11.2.3 EOF的使用

EOF本意是End Of File,表明到了文件末尾。“EOF”通常与“<<”结合使用,“<。既然是分界符,那么形式自然不是固定的,这里可以将“EOF”进行自定义,但是前后的分界符必须成对出现且不能和Shell命令冲突。

例11.8:以<

[utah@utahstu2 utah]$ cat > test.txt <<EOF
> qwer
> asdf
> EOF
[utah@utahstu2 utah]$ cat test.txt 
qwer
asdf

例11.9:以ccc作为分界符(自定义一个结束符)。

[utah@utahstu2 utah]$ cat >test.txt <<ccc
> qwe
> sdf
> ccc
[utah@utahstu2 utah]$ cat test.txt 
qwe
sdf

例11.10:在脚本中可以通过输入重定向来打印消息菜单。在使用的时候需要在“<<”右边跟一对终止符。终止符是可以自定义的。

Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)_第5张图片

11.2.4 错误重定向

定义:将命令执行过程中出现的错误信息(选项或参数错误)保存到指定的文件中,而不是直接显示到显示器。

重定向操作符:

  • 输入重定向:0<或简写为<。

  • 输出重定向:1>或简写为>。

  • 错误重定向:2>。

    其中的2指的是标准错误输出的文件描述符(在使用标准输入和输出时省略了1、0编号)。

在实际应用中,错误重定向可以用来收集执行的错误信息,为排错提供依据。对于Shell脚本还可以将无关紧要的错误信息重定向到空文件/dev/null中,以保持脚本输出的简洁。

例11.11:将错误显示的内容和正确显示的内容分开。

[utah@utahstu2 utah]$ ls /etc/passwd xxx          #没有重定向时的正常显示
ls: 无法访问xxx: 没有那个文件或目录
/etc/passwd
[utah@

你可能感兴趣的:(#,Linux,读书笔记系列,linux,运维,服务器,centos)