day02-Linux基础学习 Bash基础

一、Bash Shell初步认识

1.什么是Bash Shell(壳)?

命令解释器, 将用户输入的命令,翻译给内核程序.
将用户输入的指令翻译给内核程序,内核处理完成之后将结果返回给bash

​ Bash Shell是一个命令解释器,它在操作系统的最外层,负责用户程序与内核进行交互操作的一种接口,将用户输入的命令翻译给操作系统,并将处理后的结果输出至屏幕。当我们使用远程连接工具连接linux服务,系统则会给打开一个默认的shell,我们可在这个界面执行命令、比如:获取系统当前时间,创建一个用户等等...

如何打开一个bash窗口:
            通过Xshell连接,就算打开一个Bash程序的窗口.

2.Bash Shell能做什么?

​ 几乎能完成所有的操作:
​ 文件管理 (创建 移动 复制 删除 编辑 等等)
​ 用户管理 (创建 删除 ....)
​ 权限管理
​ 磁盘管理
​ 网络管理
​ 进程管理
​ ......

3.平时我们是如何使用Bash Shell?

​ 单条命令 --> 效率低 ---> 适合少量工作

[root@oldboy ~]# ls
anaconda-ks.cfg

​ Shell Script --> 效率高 ---> 适合复杂 并且重复性的工作

[root@oldboy ~]# cat a.sh
#!bin/bash
for i in {1..10}
do
    useradd test$i
    echo "Create test$i is OK!"
done
[root@oldboy ~]# sh a.sh 
Create test1 is OK!
Create test2 is OK!
Create test3 is OK!
Create test4 is OK!
Create test5 is OK!
Create test6 is OK!
Create test7 is OK!
Create test8 is OK!
Create test9 is OK!
Create test10 is OK!

4.Bash Shell提示符

图.PNG

5.Bash Shell基础语法

​ 命令 [选项] [参数]
​ ls -a /tmp/
​ 打针 重点|轻点 往哪打

​ 命令: 主体
​ 选项: 用来调节命令的输出效果
​ -a 以 “-”引导短格式选项(单个字符)
​ --all 以“--”引导长格式选项(多个字符)
​ 选择使用短格式- , 在选项特别多的时候可以组合使用 -a -l -al
​ 参数:命令操作的对象,如文件或者路径等
​ PS: 命令必须开头,选项和参数可以出现位置调换的情况

​ ls #列出当前目录下的内容

[root@oldboy ~]# ls bash_logout
ls: cannot access bash_logout: No such file or directory  #没有找到这个文件或目录
PS:相信电脑: 不要相信自己     这个文件不存在,或者这个文件名称写错了
[root@oldboy ~]# useraddttt
-bash: useraddttt: command not found  #命令未找到

二、Bash Shell基本特性

1.命令补全 tab

​ 命令补全 路径补全 选项补全

​ 输入命令: 按下tab键 会自动补全;但是如果无法补全,按两下tab键列出所有if开头的命令。
​ 路径补全: 保证唯一就能实现补全功能,但如果输入错误则不会补全成功。
​ 选项补全: yum install bash-completion

​ PS:输入错误,tab键不好使/

2.命令快捷键

        ctrl+c  终止当前正在运行的程序
        ctrl+l  清屏  ===  clear命令
        ctrl+w  按单词或者空格进行向前删除
        ctrl+ ->  快速右移
        ctrl+ <-  快速左移
        ctrl+a  光标跳转至行首
        ctrl+e  光标跳转至行尾
        ctrl+z  暂时放入后台   几乎不用
        ctrl+u  删除光标以前的所有内容
        ctrl+k  删除光标以后的所有内容
        ctrl+r  搜索的此前执行过的命令

3.历史命令History,

​ 追溯之前发生情况 (查找执行的命令历史记录)

​ -w 保存命令历史到历史文件
​ -c 清空命令历史记录, 不会清空已保存的文件
​ -d 删除命令历史的第 N 条行

​ history 获取当前执行的历史记录
​ 使用双 !! 可执行上一条执行过的命令
​ !60 #调取history记录中编号为60的命令
​ ESC + . #调用上一条命令的最后参数或选项

​ 1.保存历史记录 [root@oldboy ~]# cat .bash_history #当前用户的家目录下
​ [root@oldboy ~]# history -w

​ 2.尝试使用history -c 清除记录

​ 3.操作完成后,清楚记录

      [root@oldboy ~]# history -c
      [root@oldboy ~]# > .bash_history
      [root@oldboy ~]# cat .bash_history

4.命令别名 alias unalias

​ 系统有很多内置的别名

1.设置别名(临时生效)

    [root@oldboy ~]# alias wk='cat /etc/sysconfig/network-scripts/ifcfg-eth0'

    [root@oldboy ~]# wk
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=none
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=eth0
    UUID=e3ab73b9-4001-4639-bce2-9ff418143b13
    DEVICE=eth0
    ONBOOT=yes
    IPADDR=10.0.0.200
    PREFIX=24
    GATEWAY=10.0.0.254
    DNS1=223.5.5.5
    IPV6_PRIVACY=no

2.取消别名(临时生效)

    [root@oldboy ~]# unalias wk
    [root@oldboy ~]# wk
    -bash: wk: command not found

3.永久添加别名

​ /etc/bashrc

   [root@oldboy ~]# echo "alias ifconfig='ifconfig eth0'" >> /etc/bashrc

三、Bash Shell获取帮助

1.命令 --help帮助

# ls --help

2.命令 man手册

# man ls    #查看ls命令的手册
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,438评论 0 5
  • 面授课day-02 0.VMware快照 1.什么是bash Shell? 命令解释器,将用户输入的命令,翻译...
    流星花娪阅读 120评论 0 0
  • 1、bash 与 shell 管理整个计算机硬件的其实是操作系统的内核(Kernel),这个内核是需要被保护的,所...
    Zhang21阅读 872评论 0 2
  • 第一节 Shell概述 1.Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送...
    littlexjing阅读 1,980评论 0 1
  • 一、VMware快照如何建立? 此项过于简单,直接省略。 二、什么是Bash shell? 终端;命令解释器、将用...
    风铃科技阅读 232评论 0 0