您好,登錄后才能下訂單哦!
閑逛中看到如下幾個bash題目,于是手癢
1、使用for循環在目錄下通過隨機小寫10個字母加固定字符串Xman批量創建10個html文件,名稱例如為:
# sh randfile.sh
# ll
total 4
-rw-r--r-- 1 root root 0 Feb 17 16:07 cxriwsivclXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 cxypjcpazqXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 fvkdxxluouXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 mahnrlhyduXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 omhxsjftubXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 pyevqsxrfnXman.html
-rw-r--r-- 1 root root 216 Feb 17 16:06 randfile.sh
-rw-r--r-- 1 root root 0 Feb 17 16:07 rcrecpovdhXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 vmjzedrtapXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 worlmhciqjXman.html
-rw-r--r-- 1 root root 0 Feb 17 16:07 xietooufrmXman.html
實現如下:
#!/bin/bash # arr=( a b c d e f g h i j k l m n o p q r s t u v w x y z ) for((j=1;j<=10;j++));do str= for((i=1;i<=10;i++));do str="$str\${arr[$[$RANDOM%26]]}" done touch $(eval echo $str)Xman.html done
2、將以上文件名中的Xman全部改成gril(用for循環實現),并且html改成大寫。
#!/bin/bash for file in *.html ; do mv $file $(echo $file | sed 's/Xman.html/gril.HTML/') ; done
結果:
[root@tvvmq40030 t]# ll
total 4
-rw-r--r-- 1 root root 0 Feb 17 16:07 cxriwsivclgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 cxypjcpazqgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 fvkdxxluougril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 mahnrlhydugril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 omhxsjftubgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 pyevqsxrfngril.HTML
-rw-r--r-- 1 root root 216 Feb 17 16:06 randfile.sh
-rw-r--r-- 1 root root 0 Feb 17 16:07 rcrecpovdhgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 vmjzedrtapgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 worlmhciqjgril.HTML
-rw-r--r-- 1 root root 0 Feb 17 16:07 xietooufrmgril.HTML
3、bash for循環打印下面這句話中字母數不大于6的單詞(昆侖萬維面試題)。
I am oldboy teacher welcome to oldboy training class.
結果如下:
[root@tvvmq40030 t]# sh pr.sh
I
am
oldboy
to
oldboy
class.
實現:
#!/bin/bash for i in I am oldboy teacher welcome to oldboy training class. ; do [[ ${#i} -le 6 ]] && echo $i done
4、請用shell或Python編寫一個等腰三角形(triangle.sh),接收用戶輸入的數字。
例如:
triangle.sh
Please Enter a number:5
*
***
*****
*******
*********
實現:
#!/bin/bash read -p "Please Enter a number: " line black() { for((j=1;j<=$1;j++)); do echo -n "$2" done } for i in $(seq 1 $line); do black $[$line - $i] " " black $[$i * 2 -1 ] "*" black $[$line - $i] " " echo done
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。