符号 | 作用 |
---|---|
命令 < 文件 | 将文件作为命令的标准输入 |
命令 << 分界符 | 从标准输入中读入,直到遇见分界符才停止 |
命令 < 文件 1 > 文件 2 | 将文件 1 作为命令的标准输入并将标准输出到文件 2 |
符号 | 作用 |
---|---|
命令 > 文件 | 将标准输出重定向到一个文件中(清空原有文件的数据) |
命令 2> 文件 | 将错误输出重定向到一个文件中(清空原有文件的数据) |
命令 >> 文件 | 将标准输出重定向到一个文件中(追加到原有内容的后面) |
命令 2>> 文件 | 将错误输出重定向到一个文件中(追加到原有内容的后面) |
命令 >> 文件 2>&1 或 命令 &>> 文件 | 将标准输出与错误输出共同写入到文件中(追加到原有内容的 后面) |
注: 对于重定向中的标准输出模式,可以省略文件描述符 1 不写,而错误输出模式的文件描述符 2 是必须要写的。
例:
[root@linuxprobe ~]# echo "Welcome to LinuxProbe.Com" > readme.txt [root@linuxprobe ~]# echo "Quality linux learning materials" >> readme.txt
符号为“ | ”,其执行格式为 “命令 A | 命令 B”
命令符的作用也可以用一句话来概括“把前一个命令原本要输出到屏幕的数据当作是后一个命令的标准输 入”。
通配符就是通用的匹配信息的符号,比如星号( *)代表匹配零个或多个字符,问号( ?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配 0~9之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配 a、 b、 c 三个字符中的任意一个字符。
例:
[root@linuxprobe ~]# ls -l /dev/sda* brw-rw----. 1 root disk 8, 0 May 4 15:55 /dev/sda brw-rw----. 1 root disk 8, 1 May 4 15:55 /dev/sda1 brw-rw----. 1 root disk 8, 2 May 4 15:55 /dev/sda2
如果只想查看文件名为 sda 开头,但是后面还紧跟其他某一个字符的文件的相关信息,这时就需要用到问号来进行通配了。
[root@linuxprobe ~]# ls -l /dev/sda? brw-rw----. 1 root disk 8, 1 May 4 15:55 /dev/sda1 brw-rw----. 1 root disk 8, 2 May 4 15:55 /dev/sda2
除了使用[0-9]来匹配 0~9 之间的单个数字,也可以用[135]这样的方式仅匹配这三个指定数字中的一个,若没有匹配到,则不会显示出来:
[root@linuxprobe ~]# ls -l /dev/sda[0-9] brw-rw----. 1 root disk 8, 1 May 4 15:55 /dev/sda1 brw-rw----. 1 root disk 8, 2 May 4 15:55 /dev/sda2 [root@linuxprobe ~]# ls -l /dev/sda[135] brw-rw----. 1 root disk 8, 1 May 4 15:55 /dev/sda1
4 个最常用的转义字符如下所示。 反斜杠( \) :使反斜杠后面的一个变量变为单纯的字符串。 单引号( '') :转义其中所有的变量为单纯的字符串。 双引号( ""):保留其中的变量属性,不进行转义处理。 反引号( ``):把其中的命令执行后返回结果。
变量名称 | 作用 |
---|---|
HOME | 用户的主目录(即家目录) |
SHELL | 用户在使用的 Shell 解释器名称 |
HISTSIZE | 输出的历史命令记录条数 |
HISTFILESIZE | 保存的历史命令记录条数 |
邮件保存路径 | |
LANG | 系统语言、语系名称 |
RANDOM | 生成一个随机数字 |
PS1 | Bash 解释器的提示符 |
PATH | 定义解释器搜索用户执行命令的路径 |
EDITOR | 用户默认的文本编辑器 |
[root@linuxprobe ~]# echo $HOME /root [root@linuxprobe ~]# su - linuxprobe Last login: Fri Feb 27 19:49:57 CST 2017 on pts/0 [linuxprobe@linuxprobe ~]$ echo $HOME /home/linuxprobe
自行创建变量
[root@linuxprobe ~]# mkdir /home/workdir [root@linuxprobe ~]# WORKDIR=/home/workdir [root@linuxprobe ~]# cd $WORKDIR [root@linuxprobe workdir]# pwd /home/workdir
自行创建的变量不具有全局性,作用范围也有限,默认情况下不能被其他用户使用。可用export 命令将其提升为全局变量。
[root@linuxprobe workdir]# su linuxprobe Last login: Fri Mar 20 20:52:10 CST 2017 on pts/0 [linuxprobe@linuxprobe ~]$ cd $WORKDIR [linuxprobe@linuxprobe ~]$ echo $WORKDIR [linuxprobe@linuxprobe ~]$ exit [root@linuxprobe ~]# export WORKDIR [root@linuxprobe workdir]# su linuxprobe Last login: Fri Mar 20 21:52:10 CST 2017 on pts/0 [linuxprobe@linuxprobe ~]$ cd $WORKDIR [linuxprobe@linuxprobe workdir]$pwd /home/workdir
本文作者:Gustav
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!