> 替换
>> 追加
STDIN 输入重定向 状态0
STDOUT 输出重定向 状态1
STDERR 错误重定向 状态2
ls -al 命令是用来查看文件的权限、创建时间等文件信息
localhost:shell脚本语言 zhengqiankun$ ls -al redirect.sh
-rwxrwxrwx@ 1 zhengqiankun staff 300 1 31 09:54 redirect.sh
如果查看一个不存在的文件,会打印错误信息,可以将错误信息打印重定向输出到一个文件,
ls -al a.sh 2>err.sh
上面这个命令中a.sh文件不存在,会将错误信息输出到err.sh,注意:err.sh文件如果不存在,会自动创建。“2”是错误输出重定向状态,这里需要写上
ls -al redirect.sh a.sh 2>>hi.txt 1>>hi.txt
这样写错误信息和查询到的信息都可以保存到 hi.txt
ls -al redirect.sh a.sh &>>hi.txt
将错误信息和正确信息都输出到hi.txt
6.1 临时重定向
例如: echo "hello word ">&2
执行命令: ./fileA.sh 2>fileB.sh 就是将A文件中标记的错误信息重定向输出到B文件
6.2 永久重定向
exec 命令是批量输出的意思
exec 1> fileB.sh
echo "hello"
echo "hi"
会重定向输出到B文件中
6.3重定向输入
exec 0<fileContent.sh
#循环遍历读取
count=1
while read line
do
echo "当前行数:$count读取内容:$line"
count=$[ $count + 1 ]
done
网友评论