大学生linux大作业,关于linux:OS大作业一shell编程

readInfo.sh

#!/bin/bash

read -t 30 -n 1 -p "Press 'w' to write in, Press 's' to search, Press 'r' to remove :" ch

echo -e "\n"

if [ $ch == "w" ]

then

if [ ! -d /tmp/info ]

then

mkdir /tmp/info

echo -e "User\tPlatform\tID\tPassword\n" > /tmp/info/passwd.txt

fi

read -t 30 -p "User:" user

read -t 30 -p "Platform:" plat

read -t 30 -p "ID:" id

read -t 30 -s -p "Password:" key

echo -e "\n"

echo -e "$user\t$plat\t$id\t$key\n" >> /tmp/info/passwd.txt

elif [ $ch == "s" ]

then

read -t 30 -p "Please input the Platform for searhing:" splt

read -t 30 -p "Please input ID for searching:" sid

grep "$splt.$sid" /tmp/info/passwd.txt | awk '{printf "The password is :"$4"\n"}'

elif [ $ch == "r" ]

then

read -t 30 -p "Please input the Platform for removing:" rplt

read -t 30 -p "Please input the ID for removing:" rid

sed -i '/'"$rplt.$rid"'/d' /tmp/info/passwd.txt &>/dev/null

else

echo -e "Wrong instruction!\n"

fi

echo -e "\n"

Backup.sh

#!/bin/bash

ntpdate asia.pool.ntp.org &>/dev/null

date=$(date +%y%m%d)

size=$(du -sh /etc)

if [ -d /tmp/dbback ]

then

echo "Date is :$date" > /tmp/dbback/db.txt

echo "Size is :$size" >> /tmp/dbback/db.txt

cd /tmp/dbback

tar -zcf etc_$date.tar.gz /etc db.txt &>/dev/null

rm -rf /tmp/dbback/db.txt

else

mkdir /tmp/dbback

echo "Date is :$date" > /tmp/dbback/db.txt

echo "Size is :$size" >> /tmp/dbback/db.txt

cd /tmp/dbback

tar -zcf etc_$date.tar.gz /etc db.txt &>/dev/null

rm -rf /tmp/dbback/db.txt

fi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LINUX/UNIX Shell编程大作业Linux系统的/etc目录下有这样一个文件passwd,该文件里包含系统中所有用户信息的记录,记录里包含每个用户的如下信息:用户名、密码、用户ID、组ID、用户全名、用户主目录和用户登录所用的shell。请设计一个脚本(shell程序能实现增加、删除、查找和显示特定用户信息的功能。你们可以通过创建一些UNIX/LINUX shell 脚本文件来满足以上需求。 可以用任意一个文本编辑器打开passwd文件,该文件里包含用冒号分隔开的字段组成的记录,如下所示: root:x:0:0:root:/root:/bin/bash zxj:x:500:500:zxj303:/home/zxj:/bin/bash . . . 在主Shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。在不同任务的中,这些操作能自动实现以下功能: 1、 在屏幕上显示当前所有用户的记录 2、 在屏幕上显示当前所有用户(经过格式化和排序的)的记录 3、 只在屏幕上显示用户名和用户ID 4、 只在屏幕上显示(经过格式化和排序的)用户名和用户ID 5、 查询并显示特定用户的记录 6、 往passwd文件里增加新的用户记录 7、 从passwd文件里删除某个用户记录 你可以使用UNIX/LINUX中一些比较简单的命令或命令组合来执行1、2、3、4、5的任务。对于任务6和7,你需要编写单独的Shell脚本文件(必须分别命名为add和delete)并且在你的主脚本menu文件中调用这些脚本文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值