8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向相关的知识,希望对你有一定的参考价值。

8.1 shell介绍

1. shell是一个命令解释器,提供用户和机器之前的交换

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

3. CentOS7默认shell是bash(Bourne Agin Shell); shell还有zsh、ksh等

zsh、ksh这两种shell命令没有安装, 可以用yum list搜索下这两个命令的安装包:

[[email protected] ~]# yum list |grep zsh

[[email protected] ~]# yum list |grep ksh

4. shell有自己的特定语法,比如逻辑判断、循环

8.2 命令历史

1. 查看命令历史内所有命令history

[[email protected] ~]# history

2. 查看命令历史存放的文件路径(用户夹目录.bash_history):

ls /用户夹目录/.bash_history

[[email protected] ~]# ls /root/.bash_history

注意:非正常命令退出终端,本次输入过的命令,不会保存到这个文件里,再次打开终端,命令历史里也找不到(不完整)!!!

3. 查看命令历史存放文件储存的命令最大数值

[[email protected] ~]# echo $HISTSIZE

4. 修改 命令历史存放文件储存的命令最大数值

[[email protected] ~]# vi /etc/profile

修改存储最大数值:HISTSIZE=最大数值(数字)

技术分享图片技术分享图片

5. 即刻生效 /etc/profile的修改:

[[email protected] ~]# source /etc/profile

6. 环境变量,命令历史命令标记 年月日,时分秒:

[[email protected] ~]# HISTTIMEFORMAT="%Y%m%d %H:%M:%S"

7. 修改 命令历史命令标记的日期时间:

[[email protected] ~]# vi /etc/profile

插入命令历史命令标记日期时间的环境变量: HISTTIMEFORMAT="%Y%m%d %H:%M:%S"

技术分享图片技术分享图片

8. 即刻生效 /etc/profile的修改:

[[email protected] ~]# source /etc/profile

9. .bash_history存放历史命令文件添加特殊权限a(避免被修改删除):

chattr +a  /用户夹目录/.bash_history

[[email protected] ~]# chattr +a /root/.bash_history

10. 执行上一条命令!!

[[email protected] ~]# !!

11. 执行命令历史编号对应命令!命令历史命令编号

[[email protected] ~]# !978

12. 执行ls开头,最近执行过得命令:!ls

[[email protected] ~]# !ls

8.3 命令补全和别名

1. 敲一下Tab键: 自动补全命令、路径 、centos7还可以补全参数

2. 敲两下Tab键: 列出以输入的命令为开头的多个命令

3. 敲一下 Tab键,参数可补全,需要安装bash-completion包:

[[email protected] ~]# yum install -y bash-completion

4. 重启系统(生效):

[[email protected] ~]# reboot

5. 设定 自定义别名命令alias 自定义的别名='原命令'

[[email protected] ~]# alias haols='ls'

6. 取消(删除) 自定义别名命令unalias  自定义的别名命令

[[email protected] ~]# alias haols

7. 查看 自定义alias(别名命令)存放文件ls  /用户夹目录/.bashrc                            

[[email protected] ~]# ls /root/.bashrc

8. 查看 别名命令存放脚步所在目录:

[[email protected] ~]# ls /etc/profile.d/

8.4 通配符

1. 当前目录列出,包含.txt的文件(*表示多个任意的字符):

[[email protected] ~]# ls *.txt

技术分享图片技术分享图片

2. 当前目录列出, 包含.txt文件(?表示一个任意的字符)

[[email protected] ~]# ls ?.txt

技术分享图片技术分享图片

3. 当前目录列出,[]内范围数字包含.txt的文件(数字最大范围0-9)

[[email protected] ~]# ls [0-9].txt

技术分享图片技术分享图片

4. 当前目录列出,[]内范围字母包含.txt的文件(字母范围 a-z或A-Z)

[[email protected] ~]# ls [a-z].txt

技术分享图片技术分享图片

5. 当前目录列出,[]内范围数字和字母包含.txt的文

[[email protected] ~]# ls [0-9a-z].txt

技术分享图片技术分享图片

6. 当前目录列出,[]内数字开头带有.txt的文件(方括号只支持单数,数字最大到9)注意:方括号每个字符之间可不加逗号分割!!!

[[email protected] ~]# ls [1,2,3,4,11,22,33,44].txt

技术分享图片技术分享图片

7. 当前目录列出,{}内数字开头带有.txt的文件(花括号支持多位字符)

注意:花括号每个字符之间必须加逗号分割

[[email protected] ~]# ls {1,2,3,4,11,22,33,44}.txt

技术分享图片技术分享图片

8.5 输入输出重定向

输出:命令结果,输出到文件

1. 输出重定向注意:>(一个大于号)后面文件原有内容会被删除

前面命令输出结果输出后面文件(原有内容被删): 前面命令 >  后面文件

[[email protected] ~]# cat 1.txt > 2.txt

2. 输出追加重定向:注意:>>(两个大于号)后面文件原有内容不会被删除

前面命令输出结果追加到 >后面文件(原有内容不会删): 前面命令 >>  后面文件

[[email protected] ~]# cat 1.txt >> 2.txt

3. 输出错误命令重定向

错误命令的输出结果,输出后面文件(原有内容被删):前面错误命令  2>  后面文件

[[email protected] ~]# cataa 1.txt  2>  2.txt

4. 输出错误命令追加重定向

错误命令的输出结果追加后面文件(原有内容不会删):前面错误的命令 2>>  后面文件

[[email protected] ~]# cataa 1.txt  2>>  2.txt

输入:文件内容,输入到命令

1. 1.txt内容,输入到wc -l命令执行: 命令 <  文件

[[email protected] ~]# wc -l <  1.txt


以上是关于8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向的主要内容,如果未能解决你的问题,请参考以下文章

五周第三次课 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.

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

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

8.1 shell 介绍8.2 命令历史8.3 命令补全与别名8.4 通配符8.5 输入输出重定向

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

8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向