1、for循环语句中的IFS变量如何进行临时更改

#!/bin/bash

IFS_OLD=$IFS
IFS=$'\n'
#此处的"\n是指换行符

for name in $(cat  你要查找的文件目录)
do 
  echo $name
done

IFS=$IFS_OLD

2、通过双重循环来输出直角梯形

#!/bin/bash

#外循环控制行数
for ((a=1; a<=10; a++))
do
  #输出空白的倒三角
  for ((b=10; b>=a; b--))
  do
    echo -n " "
    #不换行输出空格
  done
  #输出矩形
  for ((c=1; c<=a+10; c++))
  do
    echo -n "*"
  done
  
  echo ""
  #用于每行的换边
done

3、使用while双重循环来制作99乘法表的脚本

#!/bin/bash
a=1
while [ $a -le 9 ]
do
b=1
  while [ $b -le $a ]
       do
         let sum=$a*$b
         echo -n -e "$a*$b=$sum\t"
         #\t是输出空位符,-n是不换行,-e是输出
         let b++
       done
     echo ""   
     #此处表示换行输出
    let a++
done

4、通过使用cat 文件名 | while read line 循环来分割文本行数,并把行数转存到其他的文本当中

#!/bin/bash
a=0
num=1
#a是指代该文件一共有多少行,num是指代创建第几个分割文件
cat 文件 | while read line
do
  let a++
  b=$[$a % 50]
  if [$b -eq 0 ]
  #需求是每50行做一次分割,不满50行的按50行计算,所以这边直接除以50。采用的是变量“b”
  then
  echo $line >> 文件名$num
  let num++
  #内容导入新的文件,记得用绝对路径,此外记得num加一
  else
  echo $line >> 文件名$num
  #不满50行的内容导入新的文件,无剩余行数,循环结束
  fi
done