文章目录
每个进程默认打开3个文件描述符:
stdin
标准输入,从命令行读取数据,文件描述符为0;stdout
标准输出,向命令行输出数据,文件描述符为1;stderr
标准错误输出,向命令行输出数据,文件描述符为2;
可以用文件重定向将这三个文件重定向到其他文件中。
重定向命令
命令 | 说明 |
---|---|
command > file |
将stdout 重定向到file 中 |
command < file |
将stdin 重定向到file 中 |
command >> file |
将stdout 以追加方式重定向到file 中 |
command n> file |
将文件描述符n 重定向到file 中 |
command n>> file |
将文件描述符n 以追加方式重定向到file 中 |
示例1
echo -e "Hello \c" > output.txt # 将字符出重定向输出到output.txt中
echo "World" >> output.txt # 将字符串追加到output.txt中
read str < output.txt # 从output.txt中读取字符串
echo $str # 输出结果:Hello World
示例2
创建test.sh
脚本
#! /bin/bash
read a
read b
echo $(expr "$a" + "$b")
创建input.txt,里面的内容为:
3
4
执行命令
bash test.sh < input.txt > output.txt
cat output.txt
输出 7
示例3
echo "$(< input.txt)" # 输出input.txt中的内容
ls > a.txt # 将当前目录下的文件列表写入a.txt中