admin管理员组

文章数量:1532367

2024年7月16日发(作者:)

Shell 编程题(答案)1

shell-编程题(答案)1

1、编写一个名为的脚本,它包括以下内容。a)包含一段注释,列出

您的姓名、脚本的名称和编写这个脚本的目的。

b)问候用户。c)表明日期和时间。d)表明这个月的日历。e)表明您的机器名。

f)显示当前这个操作系统的名称和版本。g)显示父目录中的所有文件的列表。h)显示

root正在运行的所有进程。i)显示变量term、path和home的值。j)显示磁盘使用情况。

k)用id命令打印出您的组id。m)跟用户说“goodbye”

#!/bin/bash

#09嵌入5号贾德进l的简单编程

user=`whoami`case$userinroot)

echoteacher)

echo*)

echoesac

echo日期和时间:`date`echo本月的日历:`cal`

echo本机的机器名:`hostname`

echo当前这个操作系统的名称和版本:`uname-s;uname-v`echo父目录中的所有

文件的列表:`ls../`echo正在运行的所有进程:`ps-uroot`echo变数term的

值:$termecho变数path的值:$pathecho变数home的值:$homeecho磁盘的使用

情况:`df`

echo用id命令列印出来你的组与id:`id-g`echo

2、设计一个shell程序,在/userdata目录下建立50个目录,即user1~user50,

并设置每个目录的权限为rwxr-xr―

#!/bin/bashcd/userdatai=1

while[$i-le50]do

mkdiruser$ichmod754user$ii=$((i+1))done

3、编写shell程序,实现自动删除50个用户账号的功能。账号名为stud1至

stud50。

for((i=1;i<=50;i+=1));do

useradddone

for((i=1;i<=50;i+=1));do

userdel-rdone

4、设计一个shell程序,备份并放大/etc目录的所有内容,存放在/root/bak目录

里,且文件名为如下形式yymmdd_etc,yy为年,mm为月,dd为日。

#!/bin/bash

dirname=`ls/root|grepbak`if[-z$dirname];thenmkdir/root/bakcd/root/bakfi

yy=`date+%y`mm=`date+%m`dd=`date+%d`

tarczvf${yy}${mm}${dd}_/etcecho

5、某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决方案:

(1)在下午4:50删掉/abc目录下的全部子目录和全部文件;(2)下午5:50将

/data目录下的所有目录和文件档案并放大为文件:;(3)在下午5:55

将ideUSB的第二个逻辑分区装载。

//采用:

#(1)在下午4:50删掉/abc目录下的全部子目录和全部文件;5016***rm-rf/abc/*

#(2)下午5:50将/data目录下的所有目录和文件归档并压缩为文件:;

5017***/data

#(3)在下午5:55将ide接口的第二个逻辑分区卸载.5517***umount/dev/hda6

//继续执行:

6、每天下午1:30分备份/etc下的所有文件到/home/backup下。而且只保留最

近的7个备份。写出过程!

crontab-e3013***tarcf/home/backup/etc`date+%u`.tar/etc

本文标签: 目录文件脚本显示程序