linux-基础学习-08 管道符、重定向与环境变量

linux-基础学习-08 管道符、重定向与环境变量

重定向

输入重定向是指把文件导入到命令中,而输出重定向则是指把原本要输出到屏幕的数据信息写入到指定文件中。

  • 标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。
  • 标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。
  • 错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。

输入重定向中用到的符号以及作用

符号作用
命令 < 文件将文件作为命令的标准输入
命令 << 分界符从标准输入中读入,直到遇见分界符才停止
命令 < 文件1 > 文件2将文件1作为命令的标准输入并将标准输出到文件2

输出重定向中用到的符号及其作用

符号作用
命令 > 文件将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 >> 文件 2>&1 或 命令 &>> 文件将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)

将当前的网络信息保存到当前目录中的network_info.txt文件中(输出重定向)

[root@localhost ~]# ifconfig > network_info.txt
[root@localhost ~]# cat network_info.txt 

追加一个日期到network_info.txt文件中(输出重定向)

[root@localhost ~]# date >> network_info.txt 
[root@localhost ~]# cat network_info.txt 

管道符命令

用于把前一个命令原本要输出到屏幕的标准正常数据当作是后一个命令的标准输入

案例:统计当前Linux系统中有多少用户不能交互式登录系统

[root@localhost ~]# grep nologin /etc/passwd | wc -l
16
[root@localhost ~]# 

命令行通配符

通配符就是通用的匹配信息的符号,比如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配0~9之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配a、b、c三个字符中的任意一个字符。

案例1:

查看系统中有哪些硬盘

[root@localhost ~]# ll /dev/sd*
[root@localhost ~]# ll /dev/sd?
[root@localhost ~]# ll /dev/sd[a-z]
[root@localhost ~]# 

案例2:

查看系统中有哪些分区

[root@localhost ~]# ll /dev/sd*[0-9]

常用转义字符

Shell解释器还提供了特别丰富的转义字符来处理输入的特殊数据

反斜杠(\):使反斜杠后面的一个变量变为单纯的字符串。

单引号(’’):转义其中所有的变量为单纯的字符串。

双引号(""):保留其中的变量属性,不进行转义处理。

反引号(``):把其中的命令执行后返回结果。

在一串字符串中输出$符号

直接echo无法输出$符号,而且对其他的字符和字符串还会造成影响

[root@localhost ~]# echo hello$world
hello
[root@localhost ~]# echo hello\$world
hello$world
[root@localhost ~]# 

alias命令别名

临时让命令别名生效

 [root@localhost ~]# curl myip.ipip.net
当前 IP:112.24.12.22  来自于:中国 江苏 镇江  移动
[root@localhost ~]# myip
-bash: myip: command not found
[root@localhost ~]# alias myip='curl myip.ipip.net'
[root@localhost ~]# myip
当前 IP:112.24.12.22  来自于:中国 江苏 镇江  移动
[root@localhost ~]# 

永久对当前用户生效

[root@localhost ~]# vim ~/.bashrc

在下图所示处加上一行
alias myip='curl myip.ipip.net'
保存退出

修改了~/.bashrc文件后必须使用source命令刷新才会生效

[root@localhost ~]# source ~/.bashrc
[root@localhost ~]# myip
当前 IP:112.24.12.22  来自于:中国 江苏 镇江  移动
[root@localhost ~]# 


Linux系统中最重要的10个环境变量

变量名称作用
HOME用户的主目录(即家目录)
SHELL用户在使用的Shell解释器名称
HISTSIZE输出的历史命令记录条数
HISTFILESIZE保存的历史命令记录条数
MAIL邮件保存路径
LANG系统语言、语系名称
RANDOM生成一个随机数字
PS1Bash解释器的提示符
PATH定义解释器搜索用户执行命令的路径
EDITOR用户默认的文本编辑器

本篇到此结束,这是linux基础学习章节的最后一篇,下一篇linux-09将进入到新的章节:运维进阶

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值