shell綜合練習(二)

2021-09-10 06:32:02 字數 2187 閱讀 7798

(1).你目前的身份是:

(2).你目前所在的目錄是:

#!/bin/bash

#describe

# answer who you are and where you are

echo "你目前的身份是:"`whoami`

echo "你目前所在目錄是:"`pwd`

#!/bin/bash

#describe:

# calculate the number of days away from birthdays

##輸入生日日期,格式為:mmdd

read -p "please input your birthday(the format is:mmdd)": birthday

##今年的日期,格式為:mmdd

today=`date +%m%d`

##判斷今天是不是輸入的日期

if [ "$birthday" == "$today" ];then

echo "today is your birthday."

##通過時間戳計算,先確定是哪一年,再計算兩個時間戳之差,然後再轉換成天數

##計算今年未過的生日時間

elif [ $birthday -gt $today ];then

year=`date +%y`

total_day_s=$((`date --date="$year$birthday" +%s`-`date +%s`))

total_day=$(($total_day_s/60/60/24+1))

echo "it's still near your birthday:$total_day day"

##計算今年已過明年的生日時間

else

year=$((`date +%y`+1))

total_day_s=$((`date --date="$year$birthday" +%s`-`date +%s`))

total_day=$(($total_day_s/60/60/24+1))

echo "it's still near your birthday:$total_day day"

fi

#!/bin/bash

#describe

# calculate the sum of 1 to the input value

read -p "請輸入乙個正整數:" o

if [ $o -le 0 ];then

echo "輸入錯誤"

else

seq $o|awk 'end'

fi

(1).先檢視/tmp/nebula這個名稱是否存在

(2).如不存在則建立乙個檔案,建立後退出

(3).若存在則判斷該名稱是否是否是檔案,若為檔案則將其刪除後建立乙個同名目錄,之後退出。

(4)如果存在且為目錄則刪除。

#!/bin/bash

#describe

# create /tmp/nebula directory

##判斷/tmp/nebula是否存在

if [ ! -e /tmp/nebula ];then

touch /tmp/nebula

#判斷/tmp/nebula是否為檔案

elif [ -f /tmp/nebula ];then

rm -f /tmp/nebula && mkdir -p /tmp/nebula

#判斷/tmp/nebula是否是目錄

else

rm -rf /tmp/nebula

fi

5.建立乙個指令碼,將/etc/passwd中以:為分隔符的第乙個域取出,並在取出後的每一行中都以「the 1 account is 」root「 」來表示,其中1表示行數。

#!/bin.bash

#describe

# intercept /etc/passwd first column and output in fixed statement format

#用awk擷取以「 :」為分隔符的首列,輸出時按固定語句格式輸出

awk -f":" '' /etc/passwd

[root@mail ~]#

綜合練習二

編寫程式,讀入乙個整數x,輸出整數y。當x 1時,y等於x。當1 x 10時,y等於2x 1。當x 10時,y等於3x 11。includeint main void else if x 10 else printf d n y return0 先輸入乙個數n,表示有n組資料。每組輸入整數a和b,如...

if綜合練習

1.1 從控制台輸入你要出的拳 石頭 1 剪刀 2 布 3 2 電腦隨即出拳 3 比較勝負 import random 1.從控制台輸入要出的拳 player int input 請輸入您要出的拳 石頭1 剪刀2 布3 2.電腦出拳 computer random.randint 1,3 print...

綜合練習四

一 單選題 每題 2 分,共20分 1.以下資料結構中哪乙個是線性結構?b a.有向圖 b.棧 c.二叉樹 d.b樹 2.若某鍊錶最常用的操作是在最後乙個結點之後插入乙個結點和刪除最後乙個結點,則採用 c 儲存方式最節省時間。a.單鏈表 b.雙鏈表 c.帶頭結點的雙迴圈鍊錶 d.單迴圈鍊錶 3.以下...