shell总结(3)

shell总结(3)

学习shell这么多天,感觉也收获了不少知识,今天再最后写一篇关于这个的博客吧,我们的操作系统实验里涉及到了把文件的内容输出重定向到另一个文件里,我就总结一下输入输出重定向和文件有关的知识吧
输入输出重定向

一般情况下我们都是通过键盘输入命令,然后将结果输出到显示器上,这里用的是标准的输入和输出stdin和stdout,即默认的输入和输出。但是有时候我们也会用到一些特殊的操作,下面我来介绍一下:

输入重定向

如果我们想把文件当做输入的话,可以这样写: command < file,这样想要从键盘输入的命令就可以从文件中读取了。

输出重定向

$ command >file 可以把输出重定向到文件中,不过这样会覆盖原文件,里面原来的东西就没了。
比如

$ echo “haha wo hao shuai” > test.sh

$ chmod + x ./test.sh

$ ./test.sh

haha wo hao shuai

如果不想覆盖原来的内容,就可以使用>>进行追加

$ echo “zheng de hao shuai ma?\n dang ran le” >> test.sh

$ chmod + x ./test.sh

$ ./test.sh

haha wo hao shuai

zheng de hao shuai ma?

dang ran le

下面总结一下常用的命令:

命令说明
command > file将输出重定向到 file。
command < file将输入重定向到 file。
command >> file将输出以追加的方式重定向到 file。
n > file将文件描述符为 n 的文件重定向到 file。
n >> file将文件描述符为 n 的文件以追加的方式重定向到 file。
n >& m将输出文件 m 和 n 合并。
n <& m将输入文件 m 和 n 合并。
<< tag将开始标记 tag 和结束标记 tag 之间的内容作为输入。
/dev/null 文件

如果希望执行某个命令,但又不希望在显示器上输出,就可以将输出重定向到/dev/null文件中。
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到”禁止输出“的效果。

$ command > /dev/null

有关文件的一点操作

如果你想包含外部脚本的话有两种方法:
1. . filename
2. source filename

比如你创建了一个文件 tesh.sh,之后又创建了一个文件test1.sh,想在test1.sh里面包含test.sh
可以这样写:

#!/bin/bash

. ./test.sh

echo “haha”

然后执行脚本就只需要执行test1.sh就行了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值