forループの簡単な使用法(6例)-0から100の合計、リストパリティ、パリティの合計、検出範囲のホスト通信、/ devディレクトリ内のすべての実行可能ファイルの出力

1.1から100までのすべての整数の合計を計算します

#!/bin/bash
#1-100求和
a=0
for ((i=1; i<=100; i++))
do
  a=$(($a+$i))
done
echo $a

2.1から100までのすべての整数の奇数と偶数を除外します

for  ((i=1; i<=100; i++))
do
let a=$i%2
if [ $a = 0 ]
  then
    echo -e -n "偶数 $i\t"
else
    echo "奇数 $i"
fi
done

ここに画像の説明を挿入します

3. 100未満の整数を入力するようにユーザーに促し、1からこの数値までのすべての整数の合計を計算します。

#!/bin/bash
#输入小于100的数到1的和
read -p "请输入小于100的整数" num
a=0
for ((i=1; i<=$num; i++))
 do
   a=$(($a+$i))
done
echo $a

4.1から100までのすべての整数の偶数と奇数の合計を見つけます

#!/bin/bash
#求从1到100所有整数的偶数和、奇数和
b=0
c=0
for ((i=1; i<=100; i++))
do
let a=$i%2
if [ $a = 0 ]
   then
      let c=$i+$c
elif [ $a = 1 ]
    then
      let b=$i+$b
fi
done
echo "$c 为1到100偶数的和"
echo "$b 为1到100奇数的和"

5.指定した範囲のホストが通信しているかどうかを検出し、通信しているホストIPをファイルhost_ipに出力します。

#!/bin/bash
#ping范围主机
for i in 172.16.100.{
    
    1..20}
do
 ping -c 3 -i 0.5 -W 2 $i
if [ $? = 0 ]
  then
    echo $i >> host_ip
else
 echo "$i offline"
fi
done

6. / devディレクトリ内のすべての実行可能ファイルを出力します

#!/bin/bash
#-r-f for /dev/
for i in /dev/* 
do
if [ -f $i  ]
   then
    echo "$i 文件存在"
 if [ -x $i ]
   then
    echo "$i 有执行权限"
 else
    echo "$i 没有执行权限"
 fi
else
   echo "$i 不是文件"
fi
done

7.スクリプトを実行してユーザー名を入力します。ユーザーが存在する場合、出力はユーザーがすでに存在することを示します。ユーザーが存在しない場合は、ユーザーにパスワードの入力を求め、ユーザーを作成してパスワードを設定します。

#!/bin/bash
#useradd 
read -p "输入用户名" user
useradd $user
if [ $? = 9 ]
   then
     echo "$user 已存在"
else
read -p "输入密码" a
     echo "$a" | passwd --stdin $user
fi          

おすすめ

転載: blog.csdn.net/weixin_53567573/article/details/114437836