定向, 管道符, 环境变量
命令与命令之间的结合, 对效率和功能发面的提升
(一)重定向: 命令与文件 的操作符
输入重定向: 5% 用到,< 小于号
输出重定向: 95% 用到,> 大于号
清空写入 追加写入
标准输出:> >>
错误输出: 2> 2>>
本应输出到屏幕的信息, 但输出到文件中了.
输入重定向:
wc -l < /etc/passwd 输入行信息
wc -l < /etc/passwd
命令 参数 操作符 信息流
(二)管道符(任意门): 命令与命令
命令 A | 命令 B
命令 A 交给命令 B 再给进行处理
找出被限制登录用户的命令是 grep "/sbin/nologin" /etc/passwd;
统计文本行数的命令则是 wc -l
grep "/sbin/nologin" /etc/passwd | wc -l 引号也可以不写
用翻页的形式查看 / etc 目录中的文件列表及属性信息
ls -l /etc/ | more
正常的修改用户密码: passwd + 用户名方式, 再输入两次密码即可
passwd linuxprobe
输入密码,
确认密码,
通过把管道符和 passwd 命令的 --stdin 参数相结合, 完成密码重置:
echo "linuxprobe" | passwd --stdin root
密码 用户名
(三)通配符
星号 (*) 代表匹配零个或多个字符,
问号 (?) 代表匹配单个字符, 是最后一位
中括号内加上数字 [0-9] 代表匹配 0~9 之间的单个数字的字符, 而中括号内加上字母 [abc] 则是代表匹配 a,b,c 三个字符中的任意一个字符
- [0-9]
- [a-z]
- [A-Z]
- [a-z,A-Z]
[0-9][0-9] 和 [00-99] 效果一样
(四)转义符
反斜杠(\): 使反斜杠后面的一个变量变为单纯的字符串. 单个转义
单引号(''): 转义其中所有的变量为单纯的字符串. 全局转义
双引号(""): 保留其中的变量属性, 不进行转义处理.
反引号(``): 把其中的命令执行后返回结果. Tab 键上面的键, 变量 =` 命令 `
PRICE=5
echo "Price is $PRICE" 参数有空格, 用引号 "" 引起来
echo "Price is $$PRICE" 输出进程号码
echo "Price is \$$PRICE" 作为美元符号, 那么就需要使用反斜杠 (\) 来进行转义
(五)环境变量
命令在 Linux 中的执行分为 4 个步骤:
1, 以路径的形式来执行
2, 命令的别名形式来执行, alias 新命令 ="原始命令", 新命令与原始命令互不冲突, 可以同时使用, 重启失效, 修改 / etc/profile 写入文件永久生效
3,Bash 解释器的内部命令
这三种占平时执行命令的 2% 或不到
4, 进行多路径的查找命令并执行, PATH 用于定义查找命令所对应的路径,
常用占 98%
PATH 变量
变量名称 = 值
export 变量命令 → 全局变量(也就是一般变量转换成全局变量)
通配符 [ ]如果没有被通配上它不会显示
{ }如果没有被通配上就会报错
如: ls /dev/sda[1,3,5]
ls /dev/sda{1,3,5} 可以试验试试
来源: http://www.bubuko.com/infodetail-2904994.html