Bash shell 相关特性

bash 基础特性之:命令历史

命令历史:shell进程会在会话中保存此前用户提交执行过的命令;

  • 查看历史命令:

    • ~]# history
    • 定制history的功能,可通过环境变量来实现
    • HISISIZE:shell进程可保留的命令历史条数
    • HISIFILE:持久保存命令历史的文件 (.bash_history)
    • HISIFILESIZE:命令历史文件的大小
  • 用法:
-c:清空当前历史命令;
-a:将历史命令缓冲区中命令写入历史命令文件中;
-r:将历史命令文件中的命令读入当前历史命令缓冲区;
-w:将当前历史命令缓冲区命令写入历史命令文件中。
-d:删除指定命令历史条目
  • 显示最近#条历史命令 (history #)
  • 调用历史列表中的命令 ( ! number)
  • 再次执行上一条命令 (!!)
  • 再一次执行历史列表中最近一个以STRING开头的命令 (!STRING)
  • 调用上一条命令的最后一个参数 (ESC+.、file !$、file alt+.
  • 控制命令历史的方法
    • 环境变量:HISICONTROL
    • 参数:
      ignorespace:忽略以空白字符开头的命令
      ignoredups:忽略以空白字符开头的命令
      ignoreboth:以上两者同时生效
      echo $HISTCONTROL
    • 修改变量值
      HISICONTROL=Ignorespace

bash 基础特性之:命令补全

  • 命令补全:

    • shell程序在接收到用户执行命令的请求,分析完成后,最左侧的字符串会被当作命令;
    • 命令查找机制:
    • 根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名\
    • 给定的打头字符串如果能唯一标识某命令程序文件,则直接补全\
    • 不能惟一标识某命令程序文件,再击打一次tab键,会给出列表;
  • 路径补全:
    • 在给定的起始路径下,以对应路径下的打头字符串来逐一匹配起始路径下的每个文件 (tab)
    • 如果能惟一标识,则直接补全。否则,再一次tab给出列表;

原文地址:https://blog.51cto.com/51eat/2409637

时间: 2024-10-18 21:03:16

Bash shell 相关特性的相关文章

bash shell基础特性之三(数组)

bash shell基础特性之三(数组) 一.数组定义 数组指连续的多个独立内存空间,每个内存空间相当于一个变量. bash shell只支持一维数组,但参数个数没有限制. 数组元素:数组名+索引(从0开始编号) 声明数组:declare -a ARRAR_NAME(其实不用声明,按数组方式直接赋值给变量即可,BASH就知道那是数组) 关联数组:declare -A ARRAY_NAME 数组元素的赋值:一次赋值全部元素.指定索引进行赋值.一次只赋值一个元素 (1) array=(var1 va

Bash shell 基础特性 理论+案例详解

1.命令历史:history 环境变量: HISTFILE:命令历史记录的条数 HISTSIZE:~/.bash.history HISTFILESIZE:命令历史文件记录历史的条数 history:默认显示10条历史纪录 history -n:显示后n条历史记录 history -d n:删除第n条历史纪录 history -c:删除所有历史记录 history -a:手动追加当前会话缓冲区中的历史命令至历史文件中 !n:重复执行第n条命令 !!:重复执行上一条命令 !加命令的开头几个字母:重

linux文件管理类命令,类型,用户的权限管理及bash shell的特性:命令别名,文件名通配

文件管理类命令 ls 查看 :cat tac more less head tail 复制:cp -r:递归 -i:提示,交互 -f:强制覆盖 -a :保留所有文件信息 -d:当源为链接文件时,复制链接本身,而非源文件 -p:保持原有属性 删除 : rm 删除非空目录 rm -rf 移动 : mv 创建 : touch 用来修改时间戳,创建空文件 -c:不创建新文件,只修改时间戳 -a:仅修改访问时间 -m:修改修改时间 -t:指定时间戳 先加-m再加-t后跟时间 元数据属性:stat 显示文件

【Linxu学习004】Bash Shell 相关

一.bash 1.bash也是一个程序,该程序什么时候被调用? 用户登陆.使用su命令切换用户.直接执行bash命令都会打开一个新的bash,这种shell称之为子shell,子shell可以不和父shell类型相同,比如,子shell可以是cshell,可以是kshell,也就是说子shell的类型任意. 2.如何查看当前的shell类型 echo $SHELL 3.如何查看bash的具体使用方法 man bash 更加详细的信息:http://pubs.opengroup.org/onlin

bash shell相关命令记录(2)---注释、字符串、数组

参考链接http://c.biancheng.net/cpp/view/7000.html 1.shell注释 以“#”开头的行就是注释,会被解释器忽略.sh里没有多行注释,只能每一行加一个#号. 如果在开发过程中,遇到大段的代码需要临时注释起来,过一会儿又取消注释,怎么办呢?每一行加个#符号太费力了,可以使用 : << ! 语句1 语句2 语句3 语句4 ! 或者 : ' 语句1 语句2 语句3 ' 2.字符串 字符串是shell编程中最常用最有用的数据类型,字符串可以用单引号,也可以用双引

bash shell基础特性之二

(1) globbing 文本名通配:元字符 *:匹配任意长度的任意字符: ?:匹配任意单个字符: 示例:a*b: aab, ab, a123b; a?b: []: 匹配指定范围内的任意单个字符: 示例:[0-9] [^]:匹配范围外的任意单个字符: 示例:[^a-b] 字符集合: [:lower:]  匹配小写字母. 等同于a-z [:upper:]  匹配大写字母. 等同于A-Z [:alnum:]  匹配字母和数字.等同于A-Za-z0-9 [:digit:]  匹配(十进制)数字. 等同

bash部分重要特性

bash shell的特性之命令别名 alias:当前shell中定义的所有别名: (任何随进程而生的属性,会在进程结束,属性消失) 格式    alias 命令别名 ='原始命令+[选项}' unalias 别名 取消定义的别名 (在命令前加\使用命令本身,而不是别名) bashshell的特性:globbing,文件名通配 通配符: *:匹配任意长度的任意字符 ?:匹配任意单个字符 []:匹配指定字符范围内的任意单个字符,不区分大小写 [[:upper:]]:大写字母 [[:lower:]]

Bash Shell脚本编程-基础特性知识

Bash Shell的基础特性: 命令历史: history:shell内建命令 环境变量HISTFILE定义用户退出命令历史列表的存储位置 #echo $HISTFILE /root/.bash_history # echo $HISTFILESIZE   HISTFILE指向的文件持久留存的历史命令条目 1000 # echo $HISTSIZE           当前bash进程所留存的历史命令条目数 1000 # history -d 123            删除历史列表中的第1

Linux基础之bash shell介绍及基本特性

今天继续讲Linux基础知识,内容是关于bash shell的.分享以下bash shell的相关知识,例如基本特性等.  1.8)bash shell的介绍 1.8.1)什么是bash shell 概括地讲就是bash shell是一个命令解释器,与内核进行交互. bash shell是一个命令解释器,它在操作系统的最外层,负责用户程序与内核进行交互操作的一种接口,将用户输入的命令翻译给操作系统,并将处理后的结果输出至屏幕. 当我们使用远程连接工具连接linux服务,系统则会打开一个默认的sh