加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5

发布时间:2020-12-15 17:08:19 所属栏目:安全 来源:网络整理
导读:8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 8.1 shell介绍 shell是一个命令解释器,提供用户和机器之间的交互 shell 脚本,仅仅是shell 的一种表现 用户登录的流程,就是一个shell 的表现 支持特定语法,比如逻辑判断、
  • 8.1 shell介绍

  • 8.2 命令历史

  • 8.3 命令补全和别名

  • 8.4 通配符

  • 8.5 输入输出重定向


8.1 shell介绍

shell是一个命令解释器,提供用户和机器之间的交互
shell 脚本,仅仅是shell 的一种表现
用户登录的流程,就是一个shell 的表现

支持特定语法,比如逻辑判断、循环

每个用户都可以有自己特定的shell

CentOS7默认shell为bash(Bourne Agin Shell),Bourne为开发者

还有zsh、ksh等,也是shell的一种,用法和bash 差不多。

8.2 命令历史

查看命令历史的命令

history

输入过的命令,会有一个文件专门保存的

/roo/.bash_history

这个文件最大可以存1000条
根据环境变量定义保存命令历史的最大数量

echo$HISTSIZE

history -c 清空命令历史里面的记录,并不会删除.bash_history 文件里保存的命令
命令一开始是保存在内存里的,只有退出终端的时候,命令历史里面的命令才会保存到 .bash_history 文件内
HISTSIZE 变量在 /etc/profile 配置文件中可以做改动

source/etc/profile重启profile服务

记录history 命令历史里面的命令的运行时间

HISTTIMEFORMAT="%Y/%m/%d%H:%M:%S"

没有修改配置,所以,这个环境变量值只会在当前终端窗口生效 只需要修改 /etc/profile 在HISTSIZE 下增加一个即可

HISTSIZE=1000HISTTIMEFORMAT="%Y/%m/%d%H:%M:%S"

修改完毕后,重启profile 服务

source/etc/profile

对.bahs_history 的文件的假如隐藏权限,使这个文件,只能追加,不能删除;使用下面这个命令

chattr+a~/.bash_history

执行运行命令历史里面的最后一条命令

!!重复执行前一条命令!nn为数字,直接运行该数字的命令!ehco从命令历史里,最后一条命令向上查找,最近的,且符合echo的命令,并进行使用

8.3 命令补全和别名

在centos6下,是不支持命令的参数补全的,但在centos7下就支持命令和参数补全,需要单独安装一个包

yuminstall-ybash-completion

可以查看系统所有的 别名命令

alias

自定义命令别名,aming等同于ls -lha

aliasaming='ls-lha'

取消aming自定义别名

unaliasaming

系统默认自定义别名有部分别名

vim/root/.bashrc

部分自定义别名的存放在

/etc/profile.d/

8.4 通配符

一般用法:

1*匹配以1开头的所有
*.txt匹配以txt结尾的所有
通配符 通配符含义
* 匹配所有字符
匹配一个任意字符,如果文件名为两个或者两个以上的,将不在匹配范围内
[0-9] 匹配0-9范围内的,也可以是字母 a-z、A-Z;可以同时写多个[0-9a-zA-Z]
{1,2,3} 匹配范围内的字符,需要以 , 逗号分隔,匹配范围更加精确,精确至某一个字符;

8.5 输入输出重定向

  • 重定向

>
cat1.txt>2.txt

把 1.txt 的输出结果,输入到2.txt内,输入过程,会把2.txt内的内容删除,然后再把内容写入2.txt 内

  • 追加重定向

>>
cat1.txt>2.txt

把 1.txt 的输出结果,添加到2.txt内,输入过程,会直接把内容追加到2.txt内,在末行进行添加

  • 错误信息重定向

2>lsaaa2>a.txt

把运行的错误信息,输入到 a.txt 下,输入过程,如果发生错误信息,会把a.txt内的内容删除,然后再把内容写入a.txt 内

  • 错误信息追加重定向

2>>
lsaaa2>a.txt

把运行的错误信息,添加到 a.txt 下,输入过程,如果发生错误信息 ,会直接把错误信息追加到a.txt内,在末行进行添加

  • 拓展知识点

>+2>=&>
ls[12].txtaaa.txt&>a.txt

把运行的错误和正确的信息,全部重定向输入到 a.txt 里面;运行过程,会把a.txt原有信息删除,写入新的信息。不在屏幕上显示

>>+2>>=&>>
ls[12].txtaaa.txt&>>a.txt

把运行的错误和正确的信息,全部添加输入到 a.txt 里面,并不会删除a.txt 原有的信息。不在屏幕上显示。```

ls[12].txtaaa.txt>1.txt2>a.txt

把运行正确的结果,重定向到1.txt;把运行错的结果,重定向到a.txt。因为使用的是重定向,每次操作,1.txt、a.txt内的信息都会被替换。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读