您的位置:首页 > 运维架构 > Shell

运维开发工程师 面试题 shell编程

2017-09-14 09:20 281 查看
1. 32位随机密码生成

cat /proc/sys/kernel/random/uuid | tr -d '-'


2.查看当前系统每个ip的tcp连接数

-n 强制显示IP地址

-t 显示TCP连接

sudo netstat -nt 2> /dev/null | awk '/^tcp/ {print $5}' | cut -d ':' -f 1 | sort | uniq -c


3.显示 /etc/inittab 中包含了: 一个数字: 的行

grep ':[0-9]:' /etc/inittab


4.写一个脚本,批量添加20个用户,用户名为user01-20,密码为user后面跟5个随机字符

#!/bin/bash

for n in `seq -w 1 20`
do
# 脚本第一个参数是A|a 时,批量创建uesr01-20,并将密码设为user加5个随机字符;脚本第一个参数是D|d时,批量删除user01-20
case $1 in
A|a)
sudo useradd -s /bin/bash user$n
echo user$RANDOM | sudo passwd --stdin user$n
;;
D|d)
sudo userdel -r user$n
;;
*)
;;
esac
done


 附 连续输出 01 - 20 ,每个都是两个字符 seq -f "%02g" 1 20  ###  seq -w 1 20

5.写一个脚本呢实现192.168.1.0/24 网络里,当前在线的ip有哪些.能ping通则认为在线

ping -c 发送次数 -q 不回显 -i 收发间隔 -n 只输出数值

for i in {200..254}
do
ping 172.16.11.$i -c 1 -q -i 0.8 -n 1>/dev/null 2>/dev/null
[ $? == 0 ] && echo 172.16.91.$i 在线 >> online.txt
done


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: