基本指令:
标准输入(stdin): 代码为0, 使用< 或 <<;
标准输出(stdout):代码为1,使用> 或>>;
标准错误输出(stderror):代码为2,使用2> 或 2>>;
标准输出指令:
1> 以覆盖的方法将【正确的数据】输出到指定的文件或装置上;
1>>以累加的方法将【正确的数据】输出到指定的文件或装置上;
2>: 以覆盖的方法将【错误的数据】输出到指定的文件或装置上;
2>>:以累加的方法将【错误的数据】输出到指定的文件或装置上;
例:
$ ll ~/ >>homefile # 将家目录的文件内容写入到 homefile文件中
$ cat homefile #最后加入的内容 等于 ll ~/执行后的结果
$ ll noExistFile 2>> error # noExistFile文件不存在导致的错误信息存储到 error文件中
$ find ~/ -name .bashrc >log 2>&1 # 在家目录下查询文件,将结果输入log文件中,无论是正确的数据还是错误的数据
$ cat catfile >>test.log 2>>error.log # 查询文件catfile内容,将正确结果输入test.log文件中,错误数据输入 error.log
/dev/null 类似于垃圾桶,文件扔到这里会“消失”
例:
$ ll noExistFile 2>> /dev/null # 没有错误信息显示,也没有/dev/null 文件生成
< << 标准输入
< : 本来是需要键盘输入的内容,可以用 文件代替
<< :结束输入字符
例:
$ cat > newfile # newfile 是个新的文件,这个时候需要用键盘输入内容,然后ctrl+d 退出保存;
$ cat > newfile < existFile # 这个时候 会将existFIle里面的内容写入到 newfile,类似copy的功能;
$ cat > newfile <<"end" # 创建新文件,输入内容,直到 输入“end”后退出