首页 > 代码库 > linux shell 代码块的重定向

linux shell 代码块的重定向

代码块的重定向是指在代码块内将标准输入或标准输出重定向到文件,而在代码块外还是保留默认状态,换句话说,代码块重定向指对标准输入或者标准输出的重定向只在代码块内有效。可以重定向的代码块是while、until、for,也可以是if/then,甚至是函数。


while重定向

#!/bin/bash

ls /etc> logs

while [ "$filename" != "rc.d" ]

do

     read filename

     let "count=count+1"

done < logs                                #while代码块重定向输入


#测试代码块外部的标准输入是否重定向

echo "Pls, input data:"

read test

echo "$test"


for代码块的重定向输入类似

if [ condition ]

then

       ......

       ......
else

      ......

fi < filename


代码块重定向一定程度上增强啦shell的灵活性,它可以让一段代码很方便的处理一个文件。