`

Shell学习笔记---重定向输入、输出(原创)

阅读更多

声明:本文仅作学习研究使用,多数语句都是为了介绍语法而构造的。

重定向输入、输出示例
$cat         #cat把键盘看作标准输入,屏幕看作标准输出。按下CTRL+D结束键盘输入
$cat > sample.txt
$cat /dev/null > /var/log/messages
$cat  /etc/profile  >   /var/log/messages

$cat  /etc/profile  >>  /var/log/messages     #在文件/var/log/messages末尾追加/etc/profile 的内容
$cat  /etc/profile /home/shell.txt >    /var/log/messages

$cat /etc/profile /home/shell.txt   1 >  hold1  2 > hold2     #将标准输出定向到hold1中,将标准错误输出定向到hold2中
$exec 1> fd1.out                           #将以后所有命令的输出都定向到fd1.out
$ln -s ch05.doc ./docs >> /tmp/ln.log  2>/dev/null   #将连接文件的信息追加到/tmp/ln.log中,并将错误输出定向到/dev/null中
$rm -rf /tmp/my_tmp_dir > /dev/null 2>&1               #将标准错误输出和标准输出都定向到/dev/null中
$who | tee file.a | wc -l                                           #重定向到管道传递给tee命令后继续将结果传递给wc命令

$cat /etc/profile /home/shell.txt | tr "[a-z]" "[A-Z]"
$who | sort

$ls | less   

将循环的输出重新排序

#!/bin/bash

#Filename:output_sort.sh 

#Datetime:2010_12_24 15:56

#Discription:Sort the output number 

for i in 7 9 2 4 5 12
do
echo $i
done | sort -n
 //将变量$i中的数值进行排序

exit 0

输入重定向(利用read读入文件/etc/fstab的前两行)
#!/bin/bash

#Filename:twolines_fstab

#Datetime:2010_12_24 15:59

#Discription:Output the two lines of fstab 
File=/etc/fstab
{
  read line1      
//读入第一行
  read line2     
//读入第二行
} < $File
echo "First line in $File is:\"$line1\""      
  //输出第一行结果
echo "Second line in $File is:\"$line2\""  
 //输出第二行结果
exit 0


每5分钟将将登录进入系统的用户列表追加到logfile文件中

#!/bin/bash
#Filename:record_loginuser.sh
#Datetime:2010_12_24 16:16
#Discription:Record the username who login system every 5 minutes
while :      
//无限循环开始
do
date
who
sleep 300      
//睡眠5分钟
done >> logfile    
//将记录的结果重定向到logfile文件中

 

参考至:http://club.topsage.com/viewthread.php?tid=668357&highlight=shell
原创文章,转载请注明出处、作者
如有错误,欢迎指正
邮箱:czmcj@163.com

分享到:
评论

相关推荐

    Linux学习笔记Linux学习资料Linux教程

    【linux学习笔记-16】shell管道重定向程序的实现.doc 【linux学习笔记-1】使用GDB调试简单的用户程序.doc 【linux学习笔记-2】父子进程共享文件描述符.doc 【linux学习笔记-3】文件操作(stat,chmod,umask).doc ...

    非常宝贵的LINUX学习笔记

    【linux学习笔记-1】使用GDB...【linux学习笔记-16】shell管道重定向程序的实现 【linux学习笔记--17】POSIX IPC——消息队列 【linux学习笔记--18】POSIX IPC——信号量 【linux学习笔记--19】POSIX IPC——共享内存

    bash shell学习笔记

    一、创建shell脚本、重定向输入与输出、执行数学运算、退出脚本 二、shell脚本中的各种结构化命令的格式与用法(for、while、until、break等) 三、处理用户的输入:命令行参数、特殊参数变量、移动变量、获取用户...

    Shell脚本学习笔记

    2.2 重定向输入输出与数学计算 57 2.2.1 输出重定向 57 2.2.2 输入重定向 58 2.2.3 管道 58 2.2.4 数学计算 58 2.3 退出脚本 60 第3章 结构化命令 61 3.1 if语句 61 3.1.1 if-then语句 61 3.1.2 if-then-else语句 61...

    2009 达内Unix学习笔记

    输出重定向,意思就是说,将原来屏幕输出变为文件输出,即将内容输到文件中。 输入重定向。 本来命令是通过键盘得到输入的,但是用小于号,就能够使命令从文件中得到输入。 \ 表示未写完,回车换行再继续。 * ...

    Vxworks学习笔记

    个人前几年学习Vxworks时,整理的笔记,总给大家了。 1 基于硬盘启动的Vxworks环境搭建 3 2 Vxworks引导盘制作 6 2.1 通过DOS加载VxWorks方法 6 2.2 Bootrom三种类型 7 2.3 VxWorks映象 7 2.4 Bootrom.sys最快制作...

    Awk学习笔记和指南

    数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和 动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk的处理文本和数据...

    Linux的常用命令cat、sed、zip等用法,以及shell编程的基本语法,以及makefile编写方式等等

    1.shell语法:包含格式化输入输出、数组定义、变量定义方法、运算方法、流程控制、正则表达式、awk用法。 2.linux基本命令:如文件查看命令(cat、more)等、管道、压缩包、文件权限管理命令、重定向、链接的语法 3.l...

    Learning-Notes:学习笔记

    学习笔记 后端开发 Java maven netty Redis Spring Spring4新特性 Spring使用注意事项 Spring验证Validation SpringBoot 开发知识 相关技术名词 开发技术框架工具整理 架构知识 开发过程注意事项整理 常用开发技巧 ...

    收集的48个Shell脚本小技巧

    本文收集了一堆的shell脚本技巧,我说过,我写博客主要是作一些学习笔记,方便自己查阅,所以,我会搞出这么一篇文章,也没有什么不可理解的。关于这些技巧的出处,诶,我也忘了,可能来自theunixschool、 ...

Global site tag (gtag.js) - Google Analytics