df换行问题的设置
df是linux下用来查磁盘空间的命令,而在使用了LVM分区或网络挂载的情况下,再用df取分区的使用率时,发现有些分区显示换行了,这样会导致通过脚本取的数据不对。
[root@ ]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda5 154G 6.1G 140G 5% / /dev/sda2 29G 1.1G 26G 5% /opt /dev/sda1 190M 12M 169M 7% /boot tmpfs 3.9G 0 3.9G 0% /dev/shm /dev/sdb1 2.5T 113G 2.3T 5% /mail /dev/mapper/vg_01-LogVol00 68G 180M 64G 1% /App 218.85.xxx.xxx:/opt/apacche/conf 59G 218M 56G 1% /opt/apacche/conf
而直接使用awk进行截取数据时,可能就出现下面的情况:
[root@web45 data1]# df -h|awk '{print $1,$5}' 文件系统 已用%% /dev/sda2 3% tmpfs 0% /dev/mapper/vg_01-LogVol00 68G /App /dev/sda1 29% /dev/mapper/vg_01-LogVol02 385G /data1 /dev/mapper/vg_01-LogVol03 401G /data2 /dev/mapper/vg_01-LogVol01 73G /logs
解决该问题的方法也十分简单,在使用df命令时加上参数:-P就可以解决。
-P --portability use the POSIX output format
[root@ ]# df -hP|awk ‘{print $1,$5}’ Filesystem Use% /dev/sda5 5% /dev/sda2 5% /dev/sda1 7% tmpfs 0% /dev/sdb1 5% 218.85.xxx.xxx:/opt/apacche/conf 1%
而如果想让输出的结果而美观一些,可以再通column命令配合进行输出:
[root@web45 data1]# df -hlP|awk '{print $1,$5}'|column -t 文件系统 已用%% /dev/sda2 3% tmpfs 0% /dev/mapper/vg_01-LogVol00 1% /dev/sda1 29% /dev/mapper/vg_01-LogVol02 32% /dev/mapper/vg_01-LogVol03 1% /dev/mapper/vg_01-LogVol01 1%
分类:
linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2015-01-13 【转】2015年薪酬大涨的15个IT岗位
2015-01-13 【转】git命令