新浪系统工程师笔试--shell

这篇博客分享了作者在新浪系统工程师笔试中遇到的Shell编程题目,内容涉及数组操作,具体为使用`echo`命令输出数组的第二个元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.
test01   test02
1 200    1 100
2 500    2 300
3 200    3 50
4 100    4 150
输出
200 100 100
500 300 200
300 50  150
100 150 -50
awk 减法数组
awk ‘ NR == FNR { a[NR]=$2 } NR != FNR { print a[FNR], $2,(a[FNR]-$2)} ' /root/test*
 
2.
123abc456
456def123
567abc789
789def567
要求输出:
456ABC123
123DEF456
789ABC567
567DEF789
sed -r  's/([1-9]{3})([a-f]{3})([1-9]{3})/\3\2\1/;y/abcdef/ABCDEF/'
 
3. 编写shell程序,实现自动删除50个账号的功能。账号名为stud1至stud50。
for((i=1;i<51;i++))
do
userdel -r stud$i
done
 
4. 某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决方案:
 (1)在下午4 :50删除/abc目录下的全部子目录和全部文件;
 (2)从早8:00~下午6:00每小时读取/xyz目录下x1文件中每行第一个域的全部数据加入到/backup目录下的bak01.txt文件内;
 (3)每逢星期一下午5:50将/data目录下的所有目录和文件归档并压缩为文件:backup.tar.gz;
crontab -e
      50 16 * * * rm -rf /abc/*
      * 8-18/1 * * * awk '{print $1 > "/backup/bak01.txt"}' /xyz/x1
      50 17 * * 1 tar -czf backup.tar.gz /data
 
5. gameser这个服务启动命令为./gameser服务,请写一个脚本,当服务宕掉,脚本自动拉起gameser服务。
#!/bin/bash
while true;do
        result=`ps aux | grep gameser | wc -l`
        if [ $result -lt 2 ];then
 ./gamester
fi
        sleep 5
done
 
6. linux crontab;请在3月23号21点18分的时候,重启服务器
crontab -e
     18 21 23 3 * init 6
 
7. 你想每天23:00运行xxxx.sh脚本。并自动进行日志分析。第2天上班的时候看到分析结果 给出你的部属方案
0 23 * * * sh ****.sh;err=$?;logger -p cron.err $err
 
8. 运行脚本输入两个数得到如下结果:
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值