重定向
输入重定向:将命令输出结果写入一个文件或将一个文件内容导回到命令里面的这个过程叫做重定向
:标准(>)
输出重定向 :覆盖写入清空写入(>)/追加写入(>>)
:错误 (2>)
第一个就叫做标准信息,第二个叫做错误信息
# ls -s initial-setup-ks.cfg > laowang
# cat laowang
注释:开始并没有laowang这个文件
可以看到原来要输出到屏幕的内容现在写入到了文件当中了,这就是我们使用了标准的输出重定向了
标准的用> 错误的必须用2> 不然会报错
覆盖清空的效果用>(执行5次的结果还是一行)
这是追加的效果,用>>,他输出的结果执行几次的结果都在不会覆盖哦
用&>不管是正确的还是错误的都会输出出来。
拓展
用>>的话就会追加,学会举一反三
管道符(任意门)
命令A | 命令B
回顾一下grep 命令,将文件里面摸个字段所在行显示出来(可以提取出来一些需要的字段直观的显示出来可以加-n显示在哪行)
管道符前面我们看做命令A,后面看做命令B,管道符的作用就是将A的结果去传给B执行如上图命令A输出的结果是红色的2个字符/bin/bash,wc 命令上次说到wc -l是看多少行,wc -c是多少字节,wc -w是多少单词
这个语句是统计了/etc目录下有多少个文件是259个
重置root密码为linuxprobe
命令行的通配符
# ls -l /dev/sda*
上上面一样一个一个找文件很麻烦,我们可以用*代替,可以查出所有,*可以代表空值可以代表后面一切。意思就是只要是sda开头的,他都能匹配出来,包括他本身。
# ls -l /dev/sda?
当我们给他加问号,如上图,匹配出来两个,应该有3个才对,所以加?的话那就是说在sda后面必须匹配出来一位,所以他本身就不算了
# ls -l /dev/sda[0-9]
可以匹配sda后面0-9的数字的信息
举一反三比如[a-z] 26个小写字母 [1,3,5] 匹配1,3,5, [A-Z] 26个大写字母
\转意符 ''全局转意符 变量=`命令`
1:路径(形势直接执行的话)+命令名称(直接会被执行)
2:取别名 alias
# alias 别名="命令"
我们给uname -a这个命令取个别名叫uu,现在我们直接输入uu就相当于输入了uname -a作用是可以将很长的命令简单化
想要取消掉用
# unalias uu
3:内部命令
4:外部命令(主要的)
Linux系统一切都是文件 命令文件
bash PATH (环境变量信息)作用是告诉Bash解释器待执行的命令可能存放的位置
系统在多个路径中查找用户输入的命令文件,而定义这些路径的变量叫作PATH,可以简单地把它理解成是“解释器的小助手”,作用是告诉Bash解释器待执行的命令可能存放的位置,然后Bash解释器就会乖乖地在这些位置中逐个查找。PATH是由多个路径值组成的变量,每个路径值之间用冒号间隔,对这些路径的增加和删除操作将影响到Bash解释器对Linux命令的查找。
# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin
# PATH=$PATH:/root/bin
# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin
变量名称 | 作用 |
HOME | 用户的主目录(即家目录) |
SHELL | 用户在使用的Shell解释器名称 |
HISTSIZE | 输出的历史命令记录条数 |
HISTFILESIZE | 保存的历史命令记录条数 |
邮件保存路径 | |
LANG | 系统语言、语系名称 |
RANDOM | 生成一个随机数字 |
PS1 | Bash解释器的提示符 |
PATH | 定义解释器搜索用户执行命令的路径 |
EDITOR | 用户默认的文本编辑器 |
随机字符# echo $RANDOM
其实变量是由固定的变量名与用户或系统设置的变量值两部分组成的,我们完全可以自行创建变量,来满足工作需求。例如设置一个名称为WORK的变量,方便用户更轻松地进入一个层次较深的目录:
[root@linuxprobe ~]# mkdir /home/WORK
[root@linuxprobe ~]# WORK=/home/WORK
[root@linuxprobe ~]# cd $WORK
[root@linuxprobe WORK]# pwd
/home/WORK
但是,这样的变量不具有全局性,作用范围也有限,默认情况下不能被其他用户使用。如果工作需要,可以使用export命令将其提升为全局变量,这样其他用户也就可以使用它了:
[root@linuxprobe WORK]# su linuxprobe
[linuxprobe@linuxprobe ~]$ cd $WORK
[linuxprobe@linuxprobe ~]$ echo $WORK
[linuxprobe@linuxprobe ~]$ exit
[root@linuxprobe ~]# export WORK
[root@linuxprobe ~]# su linuxprobe
[linuxprobe@linuxprobe ~]$ cd $WORK
[linuxprobe@linuxprobe WORK]$ pwd
/home/WORK
vim编辑器
命令模式:对于文件进行一个复制剪切搜索和查询这样的一个作用
输入模式:编辑模式,对于文件内容进行一个编辑的作用
末行模式:保存或者退出的作用:键和ESC键。# set nu 显示行号
在命令模式按两次y键就是复制,然后按P就是粘贴,dd就是剪切,按下3再按dd就是剪切3行。按U时返回上一次操作,一直按一直返回,就像windows中Ctrl+Z。