Linux——bash的简单使用

bash及其特性:

1、bash实质上是一个可执行的程序,一个用户的工作环境。

2、每一个shell下可以再打开一个shell,新打开的shell称为子shell,每一个shell之间相互独立。

3、可以使用pstree命令查看当前shell下的子shell个数

使用:

1、光标跳转:

  Crtl + a : 跳到命令行行首

  Crtl + e : 跳到命令行行尾

  Crtl + d : 删除光标所在字符

  Crtl + u : 删除光标到命令行行首的字符

  Crtl + k :删除光标到命令行行尾的字符

  Crtl + l : 清屏

  Crtl + "左/右箭头" : 跳过整个单词

2、命令历史

  bash会自动记录过去执行的命令,并缓存进内存。

  查看历史命令: history

  清空历史:-c

  删除从第n个命令开始的m个字符,m默认为1:-d + n m

  保存命令历史到历史文件:-w

  显示并执行第n条命令: !n

  执行历史命令中倒数第n条命令:! -n

  执行上一条命令: !!

  执行命令历史中的最近一个以指定字符串开头的命令:!+"",例如之前有一条命令:source /etc/profile ,想再次执行时只需: ! source 即可。

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

  当用户正常退出时,内存中的命令历史会被保存到用户目录中的bash history文件中,这是一个隐藏文件,bash history保存的历史命令数量是有限的,最大为1000条,HISTSIZ 这是一个环境变量,表示命令历史缓存区大小。

3、命令别名

  alias设置命令别名,例如 alias cls= 'clear'

  alias NAME = COMMAND [option] 相当于变量赋值。只能在当前shell声明周期内有效,要想永久生效,需修改root下的.bashrc 文件,vi /root/.bashrc 然后把 alias cls= 'clear' 添加进去,再执行命令 souce /root/.bashrc(是修改立即生效) 即可。

  alias : 查看所有已经定义的命令别名

  ualias : 取消已经定义的命令别名

  如果加一个命令别名与一个命令的名称相同,则使用时shell下运行的是该别名表示的命令,如果想要使用原命令,则使用\COMMAND表示命令本身。

4、命令替换

  将命令中的某个子命令替换为它的执行结果

  表示形式:command $(子命令) ,command `子命令` 此处是单反引号而不是单引号

  bash支持的引号:` ` 反引号,用于命令替换。" " 双引号,弱引用,可以实现变量替换。' ' 单引号,强引用,不能实现变量替换。

5、文件通配   

  * 用于表示任意长度的任意字符串,任意长度包括0
  ? 用于表示任意单个字符
  [] 匹配任意指定范围内的任意单个字符串
  [:space:]表示空白符号
  [:punct:]表示标点符号
  [:lower:]表示小写字母
  [:upper:]表示大写字母
  [:alpha:]表示所有大小写字母
  [:digit:]表示数字
  [:alnum:]表示数字和字母
  [^] 表示匹配任意指定范围外的单个字符

时间

#!/bin/bash
time=$(date "+%Y年%h%d日%H时%M分%S秒")
echo "hello world !开始执行 ${time}"

Linux中bash的一些命令的更多相关文章

  1. [转]linux中强大的screen命令

    [转]linux中强大的screen命令 http://pythonorg.diandian.com/post/2012-01-05/40027464147 今天用SCREEN用点生了,有几个功能不知 ...

  2. Linux中W与Who命令的使用

    踢掉一个从某个终端连上的用户pkill -kill  -t pts/0 ---------------------------------------------------------------- ...

  3. 【日常小记】linux中强大且常用命令:find、grep【转】

    转自:http://www.cnblogs.com/skynet/archive/2010/12/25/1916873.html 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍fin ...

  4. Linux 中强大且常用命令:find、grep

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下:    find命令        f ...

  5. 【转载】Linux中强大且常用命令:find、grep

    转载自:http://www.linuxeden.com/html/softuse/20130804/142065.html 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find. ...

  6. Linux中mod相关的命令 内核模块化 mod相关命令都是用来动态加载内核模块/驱动程序模块

    Linux中mod相关的命令 内核模块化   mod相关命令都是用来动态加载内核模块/驱动程序模块 http://baike.baidu.com/link?url=lxiKxFvYm-UfJIxMjz ...

  7. linux中强大且常用命令:find、grep

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们. 本文结构如下: find命令 find命令的一般形 ...

  8. Linux中find、grep命令详细用法

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下: find命令 find命令的一般形式 ...

  9. Linux中rz和sz命令用法详解

    http://www.111cn.net/sys/linux/67810.htm 在linux中rz 和 sz 命令允许开发板与主机通过串口进行传递文件了,下面我们就来简单的介绍一下rz 和 sz 命 ...

随机推荐

  1. Java中的集合(二)单列集合顶层接口------Collection接口

    Java中的集合(二)单列集合顶层接口------Collection接口 Collection是一个高度封装的集合接口,继承自Iterable接口,它提供了所有集合要实现的默认方法.由于Iterab ...

  2. return break 和continue在for循环中的不同作用

    平时自己经常在函数里见到return,在switch语句中使用break,而continue则用的不多. 其实这三者都能在for循环中发挥不同的作用,让代码更加灵活. 先说return return是 ...

  3. Rocket - tilelink - Nodes

    https://mp.weixin.qq.com/s/KJ8pVH76rdxPOZ1vE3QlKA   简单介绍tilelink对Diplomacy Nodes的实现.   ​​   1. TLImp ...

  4. jchdl进展 - 20180918

    这几天看了下SystemC,发现与jchdl相似的地方,或者jchdl与之相似的地方. 但总体而言: 1. jchdl的模型更简单,更清晰: 2. jchdl还有一些建模需要的工具需要补充,比如: i ...

  5. 【JVM】关于OOM的二三事

    组织架构 严格来说,StackOverflowError和OutOfMemoryError都属于错误,而不是异常. java.lang.StackOverflowError public class ...

  6. HashMap1.7和1.8,红黑树原理!

    jdk 1.7 概述 HashMap基于Map接口实现,元素以键值对的方式存储,并允许使用null键和null值,但只能有一个键作为null,因为key不允许重复,另外HashMap不能保证放入元素的 ...

  7. DOM对HTML元素的增删改操作和事件概念和事件监听

    DOM创建节点的方法: document.createElement(Tag),Tag必须是合法的HTML元素 DOM复制节点的方法: 节点cloneNode(boolean deep),当deep为 ...

  8. Java实现 LeetCode 332 重新安排行程

    332. 重新安排行程 给定一个机票的字符串二维数组 [from, to],子数组中的两个成员分别表示飞机出发和降落的机场地点,对该行程进行重新规划排序.所有这些机票都属于一个从JFK(肯尼迪国际机场 ...

  9. Java实现 基础算法 百元买百鸡

    public class 百元买百鸡 { public static void main(String[] args) { //母鸡 for (int i = 1; i < 33; i++) { ...

  10. java实现找素数

    ** 找素数** 素数就是不能再进行等分的整数.比如:7,11.而9不是素数,因为它可以平分为3等份.一般认为最小的素数是2,接着是3,5,- 请问,第100002(十万零二)个素数是多少? 请注意: ...