Linux——管道符、重定向、通配符、环境变量

管道命令符

管道命令符 “|” 的作用是将前一个命令的标准输出当做后一个命令的标准输入,格式为:命令A | 命令B

例子:
输入命令 grep "/sbin/nologin" /etc/passwd | wc -l。将搜索命令的输出值传递给统计命令,统计出所有不允许登录系统的用户个数。

在这里插入图片描述


输入输出重定向

输出重定向符:

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

输入重定向符

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

例子:
① 输入命令:man ls > /root/ls.txt,将 ls 的命令帮助文档写入到 /root/ls.txt 中。
在这里插入图片描述
② 向文件中写入一行文字,输入命令:echo "Hello" > helloword.txt;向文件中追加写入一行文字,输入命令:echo "World >> helloword.txt"
在这里插入图片描述
在这里插入图片描述


命令行通配符

Bash 解释器支持的文本通配符:

通配符 含义
* 匹配 零个 或者 多个 字符
匹配任意 单个 字符
[0-9] 匹配范围内的数字
[abc] 匹配列出的任意字符

另外 Bash 解释器还支持特殊字符的扩展:

字符 作用
\ (反斜杠) 转义后面单个字符
’ ’ (单引号) 转义引号内的所有字符
" " (双引号) 变量依然有效
`` (反引号) 执行命令语句

例子:
在这里插入图片描述


环境变量

PATH 环境变量

在 Linux 中一切皆文件,命令也不例外。
当用户执行一条 ls 命令后:

  • ① 如果是以 绝对/相对路径输入的命令则直接执行 (如执行 /bin/ls)
  • ②检查是否为 alias 别名命令
  • ③由 bash 判断其是 “内部命令” 还是 “外部命令”
  • ④ 通过 $PATH 变量中定义的路径进行命令查找

输入命令:echo $PATH查看 $PATH变量
在这里插入图片描述
$PATH 变量负责告诉 bash 用户要执行的命令可能存放在哪里,然后 bash 就会在这些目录里寻找。

其余重要的环境变量

可以使用 env命令来查看环境变量有哪些。
在这里插入图片描述

变量名称 含义
HOME 用户的主目录 “home”
SHELL 当前的 shell 是哪个程序
HISTSIZE 历史命令记录条数
MAIL 邮件信箱文件
RANDOM 随机数字
PS1 bash 提示符
HISTFILESIZE history 命令存储数量
PATH 在路径中的目录查找执行文件
EDITOR 默认文本编辑器

例子:
假设需要设置一个变量 “DESKTOP”,让每个用户执行 “cd $DESKTOP” 都登录到 /root/Desktop 目录中。
定义变量: DESKTOP=/root/Desktop
在这里插入图片描述
所需要让所有用户都能使用,则需要使用 export 命令将局部变量提升为全局变量。格式为:export 变量名 [=变量值]

猜你喜欢

转载自blog.csdn.net/weixin_43915762/article/details/87865831