Linuxshell学习(1)重定向符号的使⽤和输出函数重定向:将标准的输出或错误输出的内容 输出到⽂件
重定向符号的使⽤
Linux的输⼊输出设备:
ls -l /dev/std*
/dev/stdin -> /proc/self/fd/0 # 标准输⼊设备(键盘)0
/dev/stdout -> /proc/self/fd/1 # 标准输出设备(显⽰器)1
/dev/stderr -> /proc/self/fd/2 # 标准错误输出设备(显⽰器)2
1. 输出重定向符号
>>>⽤于重定向标准输出
echo"hello world"> a.txt # > 覆盖⽂件内容
echo"append hello">> a.txt # >> 追加⽂件内容
> 和 >> 只能重定向标准输出,标准错误输出仍然会输出
> 和 >> 还常⽤于 在脚本中创建⽂件并且写⼊内容、清空⽂件内容
2> 2>>⽤于重定向错误输出
echo"error!" 2> # > 覆盖⽂件内容
echo"append error!" 2>> # >> 追加⽂件内容
&>⽤于同时重定向标准输出和错误输出
echo"ifconfig"&> log # > 覆盖⽂件内容
如果仅仅是为了隐藏脚本执⾏过程中的输出信息,同时不产⽣多余的⽂件,可以将内容重定向到
/dev/null # Linux为重定向输出提供的“垃圾站”
2. 输⼊重定向符号
<⽤于将标准输⼊内容重定向到⽂件或指令
echo"abc"> 1.txt
mkdir< 1.txt # 创建名为abc的⽂件夹
输出函数
1. echo
⽤于输出简短的内容
echo"hello wolrd"shell创建文件并写入内容
echo'Good morning'
echo常⽤的两个参数:
echo -e "123\n456"# 翻译字符串内的转义字符
123
456
echo -n "123456"# 输出结果不⾃动换⾏
123456
2. printf
printf"hello world"
效果等同于 echo -en
3. cat(HERE DOCUMENT)
⽤于输出多⾏内容,⽤法如下:
cat<< eof
>1. 第⼀⾏内容111
>2. 第⼆⾏内容222
>3. 第三⾏内容333
>4. 第四⾏内容444
>eof
输出结果如下:
第⼀⾏内容111
第⼆⾏内容222
第三⾏内容333
第四⾏内容444
eof是⽤户⾃定义的标识符,记录开始和结束的位置,内容不⼀定为eof,只要保证结尾和开头的标识符完全相同即可
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论