三、Linux入门之标准I/O重定向、管道、用户管理

标准I/O重定向

标准输入/输出

程序:指令+数据 
	读入数据:Input
	输出数据:Output
打开的文件都有一个fd: file descriptor(文件描述符)。
Linux给程序提供三种 I/O 设备 
	标准输入(STDIN)-0 默认接受来自键盘的输入
	标准输出(STDOUT)-1 默认输出到终端窗口 		
	标准错误(STDERR)-2 默认输出到终端窗口

标准输出重定向

即改变默认输入/输出位置 
把输出和错误重新定向到文件
	STDOUT和STDERR可以被重定向到文件 
	命令 操作符号 文件名
	支持的操作符号包括:
		把STDOUT重定向到文件 
		2> 把STDERR重定向到文件 
		&> 把所有输出重定向到文件
		> 文件内容会被覆盖
			set -C 禁止将内容覆盖已有文件,但可追加
			> >| file 强制覆盖 
			set +C 允许覆盖
		>> 把输出追加到文件 
		2> 覆盖重定向错误输出数据流 
		2>> 追加重定向错误输出数据流
		标准输出和错误输出各自定向至不同位置 
			COMMAND > /path/to/file.out 2> /path/to/error.out 
			如:skfsfj > f1.txt 2 > f2.txt		正确的信息输出到f1.txt,错误信息输出到f2.txt 
			echo aa > f1.txt > 2>f2.txt	会将aa输出到f1.txt文件中 合并标准输出、标准错误进行重定向输出到同一个文件中 
		&> 覆盖重定向 
			COMMAND > /path/to/file.out 2>&1 (顺序很重要) 
		&>> 追加重定向 
			COMMAND >> /path/to/file.out 2>&1
		():合并多个程序的STDOUT 
		( cal 2007 ; cal 2008 ) > all.txt

输入重定向

使用 "<" 来重定向标准输入
某些命令能够接受从文件中导入的STDIN
	tr ‘a-z’ ‘A-Z’< /etc/issue		该命令会把/etc/issue中的小写字符都转换成大写字符
	tr –d abc < /etc/fstab	删除fstab文件中的所有abc中任意字符
	cat > file 
	>mage
	>wangxiaochun 
	按ctrl+d离开,可以使用文件来代替键盘的输入
	cat < file1 > file2 
	cat < file1 >> file1 
	使用“<< 终止词”命令从键盘把多行重导向给STDIN,直到终止词位置的所有文本都发送给STDIN 
	有时被称为就地文本(here documents) 
	mail -s "Please Call" admin@magedu.com <<END
	> Hi Wang
	>
	>Please give me a call when you get in. We may need
	> to do some maintenance on server1.
	>
	>Details when you're on-site
	> Zhang
	> END

tr命令

字符替换或删除 
tr [OPTION]... SET1 [SET2] 
选项:
	-c -C --complement:取字符集的补集
	-d --delete:删除所有属于第一字符集的字符
	-s --squeeze-repeats:把连续重复的字符以单独一个字符表示
	-t --truncate-set1:将第一个字符集对应字符转化为第二字符集对应的字符 		
示例:
	tr abc 123	回车进入交互输入模式,输入的字符遇到a、b、c会被1、2、3对应替换掉 			
	tr -d ‘abc’ < /data/f1.txt		重定向输入读取文件内容,将读取到的内容中的“abc”字符串删除 
	tr -dc ‘abc’ < /data/f1.txt		重定向输入读取文件内容,将读取到的内容
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值