习题:php
一、请创建一支 script ,当你执行该 script 的时候,该 script 能够显示: 1. 你目前的身份 (用 whoami ) 2. 你目前所在的目录 (用 pwd)。linux
答:bash
#!/bin/bashapp
echo -e "Your name is ==> `whoami`"ide
echo -e "The current directory is ==> `pwd`"spa
二、请自行创建一支程序,该程序能够用来计算『您还有几天能够过生日』啊??ip
答:rem
#!/bin/bash字符串
read -p "Pleas input your birthday (MMDD, ex> 0709): " birget
now=`date +%m%d`
if [ "$bir" == "$now" ]; then
echo "Happy Birthday to you!!!"
elif [ "$bir" -gt "$now" ]; then
year=`date +%Y`
total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))
echo "Your birthday will be $total_d later"
else
year=$((`date +%Y`+1))
total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))
echo "Your birthday will be $total_d later"
fi
三、让用户输入一个数字,程序能够由 1+2+3... 一直累加到用户输入的数字为止。
答:
#!/bin/bash
read -p "Please input an integer number: " number
i=0
s=0
while [ "$i" != "$number" ]
do
i=$(($i+1))
s=$(($s+$i))
done
echo "the result of '1+2+3+...$number' is ==> $s"
四、撰写一支程序,他的做用是: 1.) 先查看一下 /root/test/logical 这个名称是否存在; 2.) 若不存在,则创建一个档案,使用 touch 来创建,创建完成后离开; 3.) 若是存在的话,判断该名称是否为档案,若为档案则将之删除后创建一个目录,文件名为 logical ,以后离开; 4.) 若是存在的话,并且该名称为目录,则移除此目录!
答:
#!/bin/bash
if [ ! -e logical ]; then
touch logical
echo "Just make a file logical"
exit 1
elif [ -e logical ] && [ -f logical ]; then
rm logical
mkdir logical
echo "remove file ==> logical"
echo "and make directory logical"
exit 1
elif [ -e logical ] && [ -d logical ]; then
rm -rf logical
echo "remove directory ==> logical"
exit 1
else
echo "Does here have anything?"
fi
五、咱们知道 /etc/passwd 里面以 : 来分隔,第一栏为帐号名称。请写一只程序,能够将 /etc/passwd 的第一栏取出,并且每一栏都以一行字符串『The 1 account is "root" 』来显示,那个 1 表示行数。
答:
#!/bin/bash
accounts=`cat /etc/passwd | cut -d':' -f1`
for account in $accounts
do
declare -i i=$i+1
echo "The $i account is \"$account\" "
done
本文所整理的答案出自 做者:鸟哥 原文地址:http://linux.vbird.org/linux_basic/fc4.php
转载时,请务必附上上述做者和出处!