Linux 05 管道符通配符转义符Vim
管道符
管道符是命令和命令之间的一种联系; 而重定向是命令和文件之间的一种联系. 想象多来梦的任意门.
- 查看系统中有多少个用户
$ wc -l /etc/passwd
- 统计系统中的用户名
$ cut -d : -f 1 /etc/passwd
- 统计系统中的用户里有几个不可以登录服务器
# 提取 /etc/passwd 中含有 /sbin/nologin 的用户
$ grep /sbin/nologin /etc/passwd | wc -l
- 查看哪几个用户可以登录服务器
$ grep /bin/bash /etc/passwd
- 统计系统中的用户里有几个可以登录服务器
$ grep /bin/bash /etc/passwd | wc -l
- 统计当前目录里有多少个文件
# 包含了 . 文件
$ ls -l | wc -l
# 不包含 . 文件
$ ls | wc -l
- 统计系统进程数量
$ ps aux | wc -l
- 修改用户密码
$ echo redhat | passwd --stdin linuxuser
通配符
- *号表示空值或无穷多
- ?号表示单个字符
- [a-z]表示单个的小写英文字母
- [A-Z]表示单个的大写英文字母
- [[:alpha:]]表示单个的英文字母
- [0-9]表示单个的数字
- [a,c,d,e]表示指定的英文字母
- [1,2,3]表示指定的某个数字
$ ls -l /dev/sd[a,b,c]
$ ls -l /dev/sda[1,2,3]
$ ls -l /dev/sd[a,b,c][1,2,3]
- []与{}的区别:如果没有通配的选项,[]不会报错,{}会报错
转义符
- \单个转义符
- ''全局转义符,将所有的逻辑操作符都转换成字符
- ""有空格则加上,做成一个整体
- ``执行里面的命令,取返回结果
$ PRICE=5
$ echo Price is \$$PRICE
# 输出 1000 个 $ 符号
命令路径别名
- 命令文件及路径
- alias 别名命令
# 启动网络服务
$ nmcli connection up ens160
$ alias haha="nmcli connection up ens160"
$ haha
- 内部命令 built-in
- 外部命令 99.999%
# 查找 fstab 命令文件
$ find / -name "fstab"
- 为什么 find 命令寻找
fstab
相比外部命令显得很慢?因为寻找范围不同,外部命令只需要在$PATH
中寻找。
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
环境变量
HOME
SHELL
HISTSIZE
RHEL8HISTFILESIZE
RHEL6/7MAIL
postfix+dovecotLANG
语系RANDOM
随机数字PS1
终端提示符PATH
命令寻找的路径EDITOR
默认编辑器
# 修改环境变量的值
$ vim /etc/profile
# 使修改后的环境变量生效
$ source /etc/profile
- 变量升级为 全局变量 后才可供其他用户使用
$ mkdir -p /a/b/c/d/e/f/g/h/j
$ WORKDIR="/a/b/c/d/e/f/g/h/j"
$ echo $WORKDIR
$ export WORKDIR
$ su linuxprobe
$ echo $WORKDIR
$ cd $WORKDIR
$ pwd
/a/b/c/d/e/f/g/h/j
Vim 编辑器
- 修改
hostname
$ vim /etc/hostname
$ :wq!
# 重启后生效
- 修改网卡配置文件
$ vim /etc/sysconfig/network-scripts/ifcfg-ens160
- 编辑软件仓库配置文件
$ vim /etc/yum.repos.d/xxx.repo