shell屏蔽错误和警告输出
前段时间打算写个自动检测服务器磁盘是否有新瓷盘未分区和挂载,如果有就自动分区并挂载,但当超过2000g的时候启用gpt分区后一直会有一个gpt处于测试阶段的警告,这个警告信息一直会打印到结果显示里面影响美观,于是想着把警告信息屏蔽,经过测试发现可以使用如下方法
在命令后追加 2>/dev/null可屏蔽标准错误
问题
fdisk -lz执行结果如下,可以看见sdc磁盘我选择了gpt分区,但会有警告,这个警告在后续的脚本中会重复打印,导致结果看起来不够明显和美观
[root@centoss129 shell]# fdisk -l 磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000958d8设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM磁盘 /dev/sdc:1073 MB, 1073741824 字节,2097152 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfd253171设备 Boot Start End Blocks Id System
/dev/sdc1 2048 2097151 1047552 83 Linux
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
Disk identifier: 76A6B7EC-341A-47A3-8135-9A072559946A# Start End Size Type Name1 2048 10483711 5G Microsoft basic logic磁盘 /dev/mapper/centos-root:18.2 GB, 18249416704 字节,35643392 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
解决办法
命令后追加 2>/dev/null 后如下,可以i看见sdc分区下的gpt告警信息被屏蔽了
[root@centoss129 shell]# fdisk -l 2>/dev/null磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000958d8设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM磁盘 /dev/sdc:1073 MB, 1073741824 字节,2097152 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfd253171设备 Boot Start End Blocks Id System
/dev/sdc1 2048 2097151 1047552 83 Linux磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
Disk identifier: 76A6B7EC-341A-47A3-8135-9A072559946A# Start End Size Type Name1 2048 10483711 5G Microsoft basic logic磁盘 /dev/mapper/centos-root:18.2 GB, 18249416704 字节,35643392 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
解释
2是linux预留的文件描述符,表示标准错误,与其类似的还有
1表示标准输出
例如想让执行的命令或者语句什么都不输出可以在命令或语句块后追加 >/dev/null 2>&1
>代表重定向,代表将前序步骤的输出放到后续的文件里
/dev/null 代表一个不存在的文件(黑洞),等同于删除
& 代表等同的意思,这里的2>&1 即代表错误输出的方式等同于标准输出,然标准输出被我们丢黑洞了,所以整句代码 >/dev/null 2>&1 的意思就是将前序命令或代码的输出全部丢黑洞,不显示任何执行结果,这中方式常用于shel脚本里屏蔽非重要结果或提示,增加代码输出简洁美观
shell屏蔽错误和警告输出相关推荐
- 将Linux脚本中的正常输出,警告,错误等信息输出到文件中
将Linux脚本中的正常输出,警告,错误等信息输出到文件中 转载于:https://www.cnblogs.com/lwmp/p/7700339.html
- python 美化输出 错误 警告等信息_OpenCV抑制、隐藏或禁用输出到屏幕的错误或警告消息...
我想知道是否有一种方法可以抑制.隐藏或禁用OpenCV输出到屏幕上的错误或警告消息,我认为这些消息源于上限读数()? 在 我认为它们来自使用FFMpeg的OpenCV,它们要么显示如下: 案例1:[m ...
- ***PHP中error_reporting()用法详解(含codeigniter框架中屏蔽错误提示的解决方案)
php中我们对错误的处理会常用到error_reporting函数了,大家可以看到最多的是error_reporting(E_ALL ^ E_NOTICE)了,这个到底什么意思呢,下面我来来看看. e ...
- c语言编译错误 原文,C语言常见错误与警告
C语言常见错误与警告 C语言常见错误与警告C语言常见错误: 1 invalid type argument of '->' (have 'struct qstr_xid_element') 这种 ...
- php有哪些屏蔽错误的方法,php常见的错误类型及屏蔽方法
1. 注意(Notices) 这些都是比较小而且不严重的错误,比如去访问一个未被定义的变量.通常,这类的错误是不提示给用户的,但有时这些错误会影响到运行的结果. 2. 警告(Warnings) 这就是 ...
- UNIX再学习 -- 错误和警告
错误和警告是常会出现的现象,了解它对以后解决问题会很有帮助.下面我们就重点来详细介绍它们. 一.错误 1.回忆错误 我们之前讲解其他内容时有涉及到错误的部分,下面让我们来回忆一下: (1)参看:C语言 ...
- iis php报错无法屏蔽,php屏蔽错误消息
定义和用法: error_reporting() 设置 PHP 的报错级别并返回当前级别. 函数语法: error_reporting(report_level) 如果参数 level 未指定,当前报 ...
- matlab检查错误 函数,检查代码中的错误和警告
调整代码分析器消息指示标记和消息 根据您在完成 MATLAB 文件时所处的阶段,您可能需要限制代码下划线标记的使用.您可以使用步骤 1 的检查代码中的错误和警告中引用的代码分析器预设执行此操作.例如, ...
- Visual C++ 2010中初学者常见错误、警告和问题
这部分将帮助大家解释一些常见的错误.警告和问题,帮助大家去理解和解决一些常见问题,并了解它的根本原因. <iostream.h>与<iostream> 下面的代码为什么在VC2 ...
最新文章
- [shell问答录]:命令、进程、子shell...
- 用 pandas + matplotlib 绘制精美的K线图
- php 谷歌语音,php 语音参考
- 小程序开发(3)-之wx.request封装
- python2安装包_解决win10下python2和python3共存问题
- OGG迁移大库注意要点之impdp导入产生大量归档
- RIA and volta
- Java基础篇:方法重载
- 2021泰迪杯B题数据处理4.1
- 计算机中丢失d3dx9 31,d3dx9_31.dll
- dnf服务器系统,可以挂dnf的云服务器
- lcd驱动移植的分析linux3.2内核,chipsee为例,液晶屏AT070TN92
- 手机上能不跳转就不跳转
- matlab 遥感图像分类,彩色遥感图像分类算法及Matlab实现
- 计算机理论参考文献,计算机理论英文参考文献 计算机理论论文参考文献哪里找...
- ssm共享充电宝管理系统计算机毕业设计
- 一文详解!对于企业来说,商业智能BI到底有什么意义
- layui个人中心html,Layui的简易入门教程
- 禁止网页 切屏 切换标签
- Java——entity(实体类)的写法规范
热门文章
- 行业观察 | 从粗放走向精细,地产审计风控数字化改革与创新
- 阿里巴巴面试资源汇总。
- 美颜sdk磨皮算法代码解析
- 猿来小课Linux教程分享Shell脚本问题大全
- Bitwarden报错:Cannot read properties of nul(reading ‘iterations‘)
- CRM软件哪个好?该如何选择?
- 最新版vscode for mac 国内高速下载
- pta c语言段错误,PTA常见错误
- 国内研究团队提出基于120个刺激编码视觉诱发电位的脑机接口
- 是什么设备主导了5G核心传输网络?OTN智能传输平台