awk shell 父目录_非常好的12道shell命令经典面试问题

shell面试题总结了一些,让我们一起看一下吧

15e6fd977f1089b86222d95de2705b5a.png

非常好的12道shell命令经典面试问题

1.文本分析

取出password中shell出现的次数

第一种方法结果:

4 /bin/bash

1 /bin/sync

1 /sbin/halt

31 /sbin/nologin

1 /sbin/shutdown

第二种方法结果:

/bin/sync 1

/bin/bash 1

/sbin/nologin 30

/sbin/halt 1

/sbin/shutdown 1

2.文件整理

employee文件中记录了工号和姓名

employee.txt:

100 Jason Smith

200 John Doe

300 Sanjay Gupta

400 Ashok Sharma

bonus文件中记录工号和工资

bonus.txt:

100 $5,000

200 $500

300 $3,000

400 $1,250

要求把两个文件合并并输出如下

处理结果:

400 ashok sharma $1,250

100 jason smith $5,000

200 john doe $500

300 sanjay gupta $3,000

3.打印本机的交换分区大小

处理结果:

Swap:1024M

4.用户清理

清除本机除了当前登陆用户以外的所有用户

处理结果:

23:00:17 up 1:08, 1 user, load average: 0.02, 0.05, 0.02

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/1 192.168.1.100 22:15 0.00s 10.75s 0.00s w

本机只剩下你自己就对了:)

5.root用户今天登陆了多长时间

处理结果:

root logon today: 0.06 hour

6.打印当前sshd的端口和进程id

处理结果:

sshd Port&&pid: 22 5412

7.输出本机创建20000个目录所用的时间

处理结果:

real 0m3.367s

user 0m0.066s

sys 0m1.925s

8.打印root可以使用可执行文件数

处理结果:

root's bins: 2306

9.编写个shell脚本将当前目录下大于10K的文件转移到/tmp目录下 #/bin/sh #Programm :

# Using for move currently directory to /tmp for FileName in `ls l | awk '$5>10240 {print $9}'` do

mv $FileName /tmp done ls al /tmp echo "Done! "

10.编写shell脚本获取本机的网络地址。

比如:本机的ip地址是:192.168.100.2/255.255.255.0,那么它的网络地址是 192.168.100.1/255.255.255.0 方法一: #!/bin/bash

#This script print ip and network

file="/etc/sysconfig/networkscripts/ifcfgeth0" if [ f $file ] then

IP=`grep "IPADDR" $file|awk F"=" '{ print $2 }'` MASK=`grep "NETMASK" $file|awk F"=" '{ print $2 }'` echo "$IP/$MASK" exit 1 fi

11.用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下。

参考程序: #!/bin/sh FILENAME=

echo “Input file name:” read FILENAME if [ c "$FILENAME" ] then

cp $FILENAME /dev fi

12.设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。

参考答案: #!/bin/sh i=1

groupadd class1 while [ $i le 30 ] do

if [ $i le 9 ] then USERNAME=stu0${i} else

USERNAME=stu${i} fi

useradd $USERNAME mkdir /home/$USERNAME

chown R $USERNAME /home/$USERNAME chgrp R class1 /home/$USERNAME i=$(($i+1)) done

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值