a.终端循环的输入整数,当输入0时程序结束,此时输出刚才这些整数的和//累加器
1 #!/bin/bash
2 sum=0
3 while [ 1 ]
4 do
5 read -p "请输入整数" num
6 ((sum+=$num))
7
8 if [ $num -eq 0 ]
9 then
10 break
11 fi
12 done
13
14 echo $sum
15
~
~
功能实现
b.编程:在家目录下创建两个目录文件file_dir和dir_dir,如果家目录下有这两个
文件夹,就不需要创建,询问用户是否要对目录清空[Y/N],输入一个文件路径,判断
这个文件路径是否存在,如果存在,把这个目录下的目录文件复制到dir_dir中,如果是其他文件,复制到file_dir下,统计复制的文件和目录文件的个数,并打印出来
1 #!/bin/bash
2 #file_dir文件创建/清空操作
3 if [ -e /home/file_dir ]
4 then
5 echo file_dir文件存在,无需创建
6 read -p "是否要对目录进行清空(Y为清空,N为不清空)" var
7 case $var in
8 "Y")
9 cd /home/file_dir/
10 for arr in `ls`
11 do
12 rm $arr
13 done
14
15 if [ -s /home/file_dir ]
16 then
17 echo 清空失败
18 else
19 echo 清空成功
20 fi
21 ;;
22 "N")
23 echo 收到,不进行清空操作
24 ;;
25 *)
26 echo 输入错误
27 ;;
28 esac
29 else
30 mkdir /home/file_dir
31 fi
32
33 #dir_dir文件创建/清空操作
34 if [ -e /home/dir_dir ]
35 then
36 echo dir_dir文件存在,无需创建
37 read -p "是否要对目录进行清空(Y为清空,N为不清空)" var1
38 case $var1 in
39 "Y")
40 cd /home/dir_dir
41 for brr in `ls`
42 do
43 rm -r $brr
44 done
45 if [ -s /home/dir_diri ]
46 then
47 echo 清空失败
48 else
49 echo 清空成功
50 fi
51 ;;
52 "N")
53 echo 收到,不进行清空操作
54 ;;
55 *)
56 echo 输入错误
57 ;;
58 esac
59
60 else
61 mkdir /home/dir_dir
62 fi
63
64 #文件路径判断/复制/个数打印
65 num1=0
66 num2=0
67 read -p "请输入一个文件路径:" file
68 if [ -e $file ]
69 then
70 cd $file
71
72 for file_name in `ls`
73 do
74 echo $file_name
75 if [ -d $file_name ]
76 then
77 cp -r $file_name /home/dir_dir
78 ((num1++))
79 else
80 cp $file_name /home/file_dir
81 ((num2++))
82 fi
83 done
84 else
85 echo $file文件不存在
86 fi
87 echo 复制的文件个数为$num2
88 echo 复制的目录个数为$num1
89
90
功能实现