c高级6.26

1.

2.统计家目录下.c文件的个数

  1 #!/bin/bash
  2 i=0
  3 for filename in `ls /home/ubuntu/*.c`
  4 do
  5     ((i++))
  6 done
  7 echo $i

 

3. 终端输入一个.sh文件,判断文件是否由可执行权限,如果有可执行权限运行脚本,没有可执行权限添加可执行权限后,再运行脚本

#!/bin/bash
  2 read -p "请输入.sh文件" filename
  3 if [ -x "$filename" ]
  4 then
  5     bash $filename
  6 else
  7     chmod 777 $filename
  8     bash $filename
  9 fi                

 

4.写一个函数,输出当前用户uid和gid,并使用变量接收结果

1 #!/bin/bash
  2 getuidgid()
  3 {
  4     uid=`id -u`
  5     gid=`id -g`
  6     echo uid=$uid
  7     echo gid=$gid                                                                    
8	}
9 a=`getuidgid`
 10 echo $a

 

5.终端输入年月,判断该月有多少天,考虑闰平年的情况 

 1 #!/bin/bash                                                                          
  2 read -p "输入年" year
  3 read -p "输入月" month
  4 a=`expr $year%4`
  5 b=`expr $year%100`
  6 c=`expr $year%400`
  7 case $month in
  8     1|3|5|7|8|10|12)
  9         echo 31天
 10         ;;
 11     4|6|9|11)
 12         echo 30天
 13         ;;
 14         2)
 15         if [ $a -eq 0 -a $b -ne 0 -o $c -eq 0 ]
 16         then
 17             echo 29天
 18         else
 19             echo 28天
21	       fi
 21 esac

 

6.使用for循环,输出九九乘法表( printf "%d * %d = %d" $i $j $((i*j)) )

1 #!/bin/bash
  2 for i in {1..9};                                                                     
  3 do
  4     for j in $(seq 1 $i); 
  5     do      
  6         printf "$j*$i=$((j*i))"
  7     done
  8     echo  
  9 done

 

7.使用for循环,找到家目录下的所有.c文件,如果文件有内容编译该文件,如果文件中没有内容,删除文件

1  #!/bin/bash 
  2  i=0
  3  for filename in `ls /home/ubuntu/*.c`
  4  do
  5      if [ -s "$filename" ]  
  6      then
  7          gcc $filename
  8      else                                                                            
  9          rm $filename
 10      fi
 11      ((i++))
 12 done
 13  echo $i      

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值