Linux输出重定向
康奈尔大学(美国)校训:“让任何人都能在这里学到想学的科目。”
本篇讲的东西对于随便玩玩的撸友可能并不常用,但对于运维小姐姐这可是必杀技,把一些常用的命令合集到一个文件中,一股脑执行即可,是不是像了解下,系上安全带,阿伦要开车了。。。。
输入重定向是指把文件导入命令中;
输出重定向是指把原本要输出到屏幕的数据信息写入指定文件中。
1 标准输入(stdin):文件描述符为0,默认从键盘输入,也可以从其他文件或命令中输入;
2 标准输出(stdout):文件描述符为1,默认输出到屏幕;
3 错误输出(stderr):文件描述符为2,默认输出到屏幕;
一 输入重定向
# 将文件作为命令的标准输入
以启动tomcat为例讲解
cat > tomcat-start.txt
写入:cd /usr/local/tomcat/bin
./catalina.sh start
执行:exec < tomcat-start.txt 即可启动tomcat
# 从标准输入中读入,直至分界符停止
cat > tomcat-start.txt << EOF
写入:
> cd /usr/local/tomcat/bin
> ./catalina.sh start
> EOF
则在文件中写入了两行
# 将tomcat-start.txt作为命令的标准输入并将标准输出重定向到tomcat.log
exec < tomcat-start.txt 2>&1 tomcat.log
二 输出重定向
# 将标准输出重定向到一个文件中(清空原文件中所有数据)
# ./xxx-start.sh > xxx.log
# 将错误输出重定向到一个文件中(清空原文件中所有数据)
#./xxx-start.sh 2> xxx.log
# 将标准输出重定向到一个文件中(追加到原文件数据的后面)
# ./xxx-start.sh >> xxx.log
# 将错误输出重定向到一个文件中(追加到原文件数据的后面)
# ./xxx-start.sh 2>> xxx.log
# 将标准输出和错误输出共同写入一个文件中(追加到原文件数据的后面)
./xxx-start.sh >> xxx.log 2>&1
备注:若写入到/dev/null,则是Linux文件系统的黑洞,可作为黑洞使用。
特此声明:
分享文章有完整的知识架构图,将从以下几个方面系统展开:
1 基础(Linux/Spring boot/并发)
2 性能调优(jvm/tomcat/mysql)
3 高并发分布式
4 微服务体系
如果您觉得文章不错,请关注阿伦故事,您的支持是我坚持的莫大动力,在此受小弟一拜!
每篇福利: