shell的特性

shell的特性

~/.bash_history命令历史存放文件,登出后保存。 

$HISTSIZE命令历史条数,允许~/.bash_history文件存储的命令条数,默认1000.

!!:上一条命令

!$:上一条命令的最后一个参数

!命令标号:执行history输出中的对应的命令


*:通配符,任意个任意字符;?:通配符,一个任意字符   

在当前shell定义的alias只在当前shell生效

>输出重定向    >>追加重定向    <输入重定向    2>错误重定向    2>>错误追加重定向

输入重定向是使用符号后文件的内容作为输入

错误重定向只记录错误信息


shell变量  

变量分为系统预设变量和用户自定义变量

 变量规则:

  • 变量名=变量内容

  • =号两边不得有空格

  • 变量名只能由字母、数字、下划线组成,并且不能以数字开头

  • 变量内容中含有特殊字符时,应使用单引号''

  • 变量内容中需要引用命令的运行结果,应使用反单引号``

  • 变量内容中需要引用其它变量值时,应使用双引号""

  • 变量内容中含有单引号时,可使用双引号""

 总结:单引号会将特殊字符作为普通字符,双引号不会消除特殊字符的意义。(上列最后一条除外)

env:显示系统预设的环境变量

set:显示所有的变量,系统预设和用户自定义

export:在子shell中声明变量

unset 变量名:取消声明变量


交互式模式就是shell等待你的输入,并且执行你提交的命令。非交互式模式,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。

当第一个用户登录时(login交互式shell),执行/etc/profile和~/.bash_profile;当运行bash shell时(nologin交互式shell),执行~/.bashrc。/etc/profile调用/etc/profile.d目录下的配置文件;~/.bash_profile会调用~/.bashrc;~/.bashrc会调用/etc/bashrc。

~/.bash_logout登出时执行一些清理任务

在当前shell定义的alias只在当前shell生效

所以如果要全局声明别名或者变量的话:变量写在/etc/profile.d/目录下,别名写在/etc/bashrc下

ssh user@hostname command:只向系统发送一条指令并不登陆系统


shell中的特殊符号

 #:注释符,忽略后面的内容    \:脱意字符,消除特殊字符的作用,使其成为普通字符

~:用户的家目录    &:将命令放到后台运行    [ ]:字符组合,匹配中括号内任意一个字符



你可能感兴趣的:(history,单引号,双引号)