2021-7-20_wanghe.ok的博客-程序员宅基地

技术标签: linux  

1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来

答:显示用户 cat /etc/passwd | egrep -v '/sbin/nologin' | cut -d":" -f1

  统计用户个数 cat /etc/passwd | egrep -v '/sbin/nologin' | cut -d":" -f1 | wc -l

 

2、查出用户UID最大值的用户名、UID及shell类型

答:cat /etc/passwd |cut -d: -f1,3,7 | sort -n -t: -k2 |tail -n1

3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

答:当前连接数如图

实现命令:

netstat -tan | grep 'ESTABLISHED' |tr -s " " | cut -d" " -f5 |cut -d":" -f1| sort -n| uniq -c

4、编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值

当前环境:

Vim disk.sh

#dish.sh

#!/bin/bash

DiskMaxUsage=`df | grep '^/dev/sd*'|grep -o '[[:digit:]]*%' | sort -n |tail -n1`

echo "the disks max usage is:$DiskMaxUsage"

效果:

5、编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小

答:Vim systeminfo.sh

#systeminfo.sh

#!/bin/bash

HOSTNAME=`hostname`

IPADDR=`ifconfig | sed -rn '2s@.*inet ([0-9.]+) .*netmask ([0-9.]+) .*broadcast ([0-9.]+)@\1@p'`

IPMASK=`ifconfig | sed -rn '2s@.*inet ([0-9.]+) .*netmask ([0-9.]+) .*broadcast ([0-9.]+)@\2@p'`

OS=`cat /etc/os-release  | head -n2 |cut -d"=" -f2 | cut -d"\"" -f2|tr -d '\n'`

Kernal=`uname -r`

CPU=`lscpu | grep '^Model name:' | tr -s " "|cut -d":" -f2`

MEM=`free -mh | tr -s " "|sed -rn 's@Mem: ([0-9.]+..) .*@\1@p'`

DISK=`lsblk | grep '^sd[a-z]'|tr -s " "|cut -d" " -f1,4 `

echo -e "This System Infomation is:"

echo -e "\thostname:$HOSTNAME"

echo -e "\tIPv4&Mask:$IPADDR $IPMASK"

echo -e "\tLinux release:$OS"

echo -e "\tKernal:$Kernal"

echo -e "\tCPU:$CPU"

echo -e "\tMemeroy:$MEM"

echo -e "\tDiskSize:$DISK"

效果:

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_60350491/article/details/118932717

智能推荐

求一个三位数 其值等于其各位阶乘之和 c语言,求这样一个三位数,该三位数等于其每位数字的阶乘之和...-程序员宅基地

根据题目,即求abc=a!+b!+c!下面我们设计算法:设三位数为n,取出每一位数分别放在a、b、c中通过定义形参,求每位数的阶乘,通过函数返回值返回主函数中,调用返回值,每一位的阶乘相加与该三位数比较,相等时,打印结果。#include int fun(int i);int main(){int n, a, b, c;printf("The number satisfied condition:...

android setflag找不到,安卓:是什么setFlags和addFlags的意图之间的差异-程序员宅基地

What is difference between setFlags and addFlags for intent. Could any one explain it please.Help Appreciated.解决方案When you use setFlags you are replacing the old flags... when you use addFlags you are..._getwindow() setflag 和 addflag

android实现底部弹出菜单,Android实现底部缓慢弹出菜单-程序员宅基地

项目要求要做一个从底部缓慢弹出一个Button Menu开始编码:MyselfFragmentpackage io.dcloud.H5B79C397.fragment;import android.content.Context;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import ..._android 底部弹出菜单

关于JSP_"jspgetparameter(\"num1\")"_kiku0618.的博客-程序员宅基地

1.标记<%<!--在jsp文件中,只有书写在执行标记中的内容才会被当作Java命令-->//1.声明Java变量int num1=100;int num2=200;//2.声明运行表达式int num3=num1+num2;//3.声明控制语句if for 语句%><!--在JSP文件,通过输出标记,通知JSP将Java变量的值写入响应体-->变量的num1的值:<%=num1%><br/>运算结果写入响应体 &._"jspgetparameter(\"num1\")"

软考高级(信息系统项目管理师)目录_信息系统项目管理高级目录-程序员宅基地

2019年11月通过软件设计师,现在备战高项,做好学习资料,本篇知识目录。详情点击链接查看对应的章节内容。希望自己能坚持下来。第一章信息系统基础知识..._信息系统项目管理高级目录

算法竞赛入门经典 (第二版)习题2-6_算法竞赛入门经典第2版习题2-6题目二为什么-程序员宅基地

用 1,2,3 …9组成三个数字abc,def,ghi每个数字恰好使用一次,要求 abc:def:ghi = 1:2:3按照 abc def ghi 的格式输出所有解 ,每行一个解。思路 :有a,b,c三个变量,先确定a的范围,最小的数且符合题目规定的数字为123,最大的数字且符合题目规定的数字是987 ,所以a的范围是 123 ~ 329(987/3).最简单的确定比例的做法就是将其乘以某数,..._算法竞赛入门经典第2版习题2-6题目二为什么

随便推点

golang 有意思的变量声明_golang procedure-程序员宅基地

//变量声明方式-1//未初始化,默认值为0var a inta = 1//变量声明方式-2//初始化avar a int = 1//变量声明方式-3//初始化a, 等同于上面的两种方式a := 1学习笔记持续更新,若有误,请批评指导~_golang procedure

se.arch.php,[archlinux][tls] archlinux下使curl支持sslv3的方法_阿犇Aben的博客-程序员宅基地

描述在archlinux下,希望使用curl产生一条使用sslv3的https访问请求。使用curl的如下命令:curl -k -vvv --sslv3 https://192.168.7.9:8080然而很遗憾,因为sslv3太老了,所以它不支持,╰─>$ curl -k -vvv --sslv3https://192.168.7.9:8080* Trying 192.168.7.9:...

百家争鸣的技术自媒体下的清流-程序员宅基地

从几何开始,自媒体开始充斥着每个人的微信、朋友圈,每天大量繁杂的信息层出不穷,不乏有的是通过工具自己做的,如下网站http://wxbbx.jh1z.com/,就说要啥有啥,各行各业的从业人员都在绞尽脑汁的告诉你,我在这里,我这里有东西,而且很好的东西,用口袋里的票子就能得到的好东西~~软件开发技术,又分为了很多的方向,有当下和未来都会很火的AI、机器人,也有多年经久不衰的Java,每一个ja...

windows判断远程机器端口开放情况_我没开远程工具端口会怎么样-程序员宅基地

1.经常会遇到这种问题,经常需要判断远程机器的端口是否开放,在windows机器上使用telnet命令能方便查看,如下telnet ip 端口 如果能打开会进入命令行格式,如果端口没开放会,会fail..._我没开远程工具端口会怎么样

Mybatis 动态标签小结_#{map.destsvc,jdbctype=varchar}-程序员宅基地

一、mybatis 拼接sql:1、概念: mybatis 标签的一些关键字: eg: <select id="selectPersionByID"parameterType="java.lang.String" resultMap="PersonResultMap"> select * from person where id=#{id} </sele..._#{map.destsvc,jdbctype=varchar}

C/C++中堆和栈的区别-程序员宅基地

一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是