2023/2/16 shell练习

2023/2/16 shell练习

1. 打印九九乘法表,printf “%d * %d = %d\t” i j $((i*j))

 #!/bin/bash 
 for i in `seq 1 1 9`
 do
     for j in `seq 1 1 $i`
     do
		 printf "%d * %d =%d\t" $i $j $((i*j))
         #echo -n "$i * $j = $((i*j))  "
     done
     printf "\n"
	 #echo ""
 done


2. 输入文件名,判断是否为普通文件,如果为普通文件,判断是否为脚本文件,如果为脚本文件,判断是否有可执行权限,如果没有可执行权限,添加可执行权限。

#!/bin/bash
read -p "输入文件名:" file
if [ -f $file ]
then
	len=`expr length "$file"`
	i=`expr index "$file" "."`
	str=`expr substr "$file" "$((i+1))" "$((len-i))"`
	echo $str
	if [ $str = "sh" ]
	then
		if [ ! -x $file ]
		then
			echo "无可执行权限,已添加"
			chmod +x $file
		fi
	else
		echo "有可执行权限"
	fi
else
	echo "不是普通文件"
fi

3. 输入一个无符号的八位数,输出他的二进制

#!/bin/bash
read -p "输入一个无符号的八位数:"  num
for ((i=0;i<8;i++))
do
	((arr[7-i]=num%2))
	((num=num/2))
done

echo ${arr[*]}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值