alias命令
- 重启系统失效
输入alias查看系统当前设置的所有别名,查看是否有你需要使用的命令
通过alias的结果可以看到,我们常用的 ls 命令其实是 ls --color=auto 这个命令的一个别名,也就是我们输入ls 命令实际上执行的是 ls --color=auto这个命令。
首先我们执行ls命令结果如下,可见特殊权限文件有颜色标识(颜色由系统不同而不同)
针对以上,我们可以使用 alias ls=‘ls --color=never’ 来对ls 命令实际执行的命令进行修改,
可以通过alias看到,ls别名指向的命令已经发生了变化
我们再次输入ls命令查看输出结果,可见颜色标识已经不再有效
相同的做法,如果在使用命令时,命令过长或者想要将命令定义为自己喜欢的名字,只需要使用
alias 别名=‘具体的命令’
即可定义自己的个性化命令,但是在系统重启之后,以此种方式设置的别名将会失效
- 永久可用
如果想让设置的别名在系统重启后继续生效,则需要更改系统的 ~/.bashrc 文件,
通过vim/vi我们进入 ./bashrc文件的编辑模式,显示如下
同样的,使用上面的格式在该文件中设置别名,然后保存退出,执行下面source命令,配置即可立即生效
source ./bashrc
history命令
我们通过终端输入的命令保存于Linux系统的 ~/.bash_history 文件中,该文件保存的历史命令为上次登录正确注销登录之前的命令,
- -c
通过shell(终端),我们输入history命令,即可查看我们使用过的历史命令(./bash_history中的命令+本次登录使用过的命令)。使用如下命令,可以清空history中的历史命令记录
history -c
使用上述命令后,在使用history查看,会发现之前的命令已经被清空了。
- -w
因为历史命令是保存在~/.bash_history文件中,但是该文件中保存的命令是上次登录并正确注销之前使用的命令。因此如果想让本次登录我们使用的命令更新在该文件中,我们需要使用下面这条命令:
history -w
这条命令就会将本次登录使用的命令也写入文件中
- 修改 .bash_history 文件保存命令大小
Linux系统中默认的.bash_history保存的大小一般为1000条命令。如果我们需要保存更多的条数,需要修改/etc/profile文件,使用vim打开该文件:
图片中标记处就是修改保存条数的位置,图中是已经经过修改的。修改过后使用命令
source /etc/profile
使得配置生效即可
输出重定向
- Linux系统标准输入输出
首先Linux系统标准输入输出如下所示。
设备 | 设备文件名 | 文件描述符 | 类型 |
---|---|---|---|
键盘 | /dev/stdin | 0 | 标准输入 |
显示器 | /dev/stdout | 1 | 标准输出 |
显示器 | /dev/stderr | 2 | 标准错误输出 |
所谓输出重定向就是指将命令的输出内容不再显示到系统输出,而是保存到文件等中,这里就指保存到文件。
常用的输出重定向命令如表格中所示,其中结合文件描述符,1为标准正确输出,2为标准错误输出,输入文件以1.txt 、2.txt表示
- 对命令输出进行重定向
命令 | 作用 |
---|---|
有输出的命令(例如 ls、cat等) > 1.txt | 将命令的输出正确结果 覆盖方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) >> 1.txt | 将命令的输出正确结果 叠加方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) 2>1.txt | 将命令的输出错误结果 覆盖方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) 2>>1.txt | 将命令的输出错误结果 叠加方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) > 1.txt 2>&1 | 将命令的输出正确与错误结果 覆盖方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) >> 1.txt 2>&1 | 将命令的输出正确与错误结果 叠加方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) &>1.txt | 将命令的输出正确与错误结果 覆盖方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等) &>>1.txt | 将命令的输出正确与错误结果 叠加方式 保存到1.txt文件中 |
有输出的命令(例如 ls、cat等)>>1.txt 2>>2.txt | 将命令的输出正确结果 叠加方式 保存到1.txt文件中, 错误结果 叠加方式 保存到2.txt文件中 |
有效利用命令,便可实现例如性能监控、抓取服务器日志等功能。例如如下命令便可简单获取进行的性能情况:
top -n 10 | grep systemd >> systemd.txt
其他的使用方式可自行搭配
笔者能力有限,如有错误之处,请指点。