【Linux】bash shell的优点以及在linux中获取帮助

本文深入探讨了Shell的概念,Bash shell的优点,包括命令与文件的补全功能、命令别名设置、命令记忆功能以及shell中的引用和特殊字符处理。同时,文章详细介绍了如何使用帮助命令和man手册获取Linux命令的详细信息。

一、什么是shell以及bash shell的优点 

    1、什么是shell

             ① shell:壳,命令解释器,负责解析用户输入的命令(处于操作系统与用户之间)

            ② type: 查看命令是file(外部命令)、alias(命令别名)还是builtin(内置命令)

               

               

               

           ③ 命令:(1)内置命令 (shell内置)。

                         (2)外置命令,在文件系统的某个目录下,有个与命令名称相同的文件。

          ④ 区别:shell为了完成自我管理和基本的管理,不同的shell内置不同的命令,但是大部分都差不多。

         ⑤ type   -t  仅列出命令执行时的依据(以哪种方式执行)

               

            type   -a 列出当前命令可以如何执行(所有可执行的方式)

              

        ⑥ 环境变量:那命令怎么知道是那个路径下的命令呢?系统为了让用户在命令行快速方便地执行命令,用一种机制来实现,这种机制就叫做环境变量。外部命令所在可执行目录的汇总

              

       (外部命令被存放在外部文件--可执行文件,存放的路径不一定相同)

    2、shell的变量功能变量简单说就是让某一个特定字符串代表不固定的内容。

           ① 设置变量:用“=”连接;等号两边不能有空格符;

          ② 变量名的规则:只能使用数字、字母和下划线,且不能用数字开头;)

         ③ 变量的赋值:name=’xiaoming de mei mei’(变量声明的过程就是申请内存使用的过程)

              

              说明:echo $name:引用变量里的内容显示出来

                          $name:代表name是个变量

   3、环境变量(不同用户的环境变量不同):定义当前用户工作环境属性的变量

   ① PATH:从哪些路径中查找用户键入的命令字符串所对应的的命令文件:echo $PATH

           

              说明:从这几个目录找对应的命令可执行文件;目录顺序是常用的在前;

           ②  su - 用户:切换用户的同时环境变量也改变

               su  用户:切换用户但环境变量没改变(尽量不要用此方法切换)      

           

          ③ 取消变量:unset 变量名称

              

              

     4、查看当前系统支持的所有的合法的shell:

            

      说明:/sbin/nologin (若将某个用户shell解释器设置在有nologin--不登陆的目录下,将无法登录也不能和系统交互)

   5、shell中的快捷键:

          ① ctrl+d         输入已结束。在shell下相当于exit

                

         说明:写邮件时:编辑完成后回车键不能退出,按ctrl+d后编辑完成并发送

         ② ctrl+c         键盘中断请求,终止当前的命令

                

        说明:若某条命令输入错误,不想执行,则可按ctrl+c后中断。

          ③ ctrl+s               暂停屏幕输出

          ④ ctrl+q               恢复屏幕输出

         ⑤ ctrl+l                 清屏,相当于clear

         ⑥ ctrl+u                删除光标至行首的内容

         ⑦ ctrl+k                删除光标至行尾的内容

         ⑧ ctrl+a                跳到命令行行首

         ⑨ ctrl+e                跳到命令行行尾

         ⑩ ctrl+左右箭头   支持按单词跳动

 

   6、/bin/bash优点:

       ① 命令与文件的补全功能

                (1)Tab:自动补全完整命令与文件名

                (2)Tab两下:可以列出所有可能匹配的选择

      ② 命令别名设置功能添加指定命令别名:alias)  

           

        说明:l.==ls -d .* :查看当前目录以.开头的所有文件(隐藏文件)

                a、临时生效(只在当前会话生效):alias 目标命令名称=’需要执行的命令’   

                                 alias  hh=ls

                   

                  

               b、删除指定的命令别名:unalias

                  

               c、当前用户永久有效:vim ~/.bashrc (进入目标用户的.bashrc文件写入命令)

                      写命令如: alias 目标命令名称=’ 需要执行的命令’ 

                                    alias  hh=ls

                      再source   .bashrc  使其生效

                        

                        

                        

                        

                 d、所有用户均可用的命令别名:vim /etc/bashrc;     /etc/bashrc

           ③ 命令记忆功能

history

命令历史--可以记1000条命令(命令历史文件为~/.bash_history) 

   n  

列出目前最近的n条信息

-c

清除命令历史

-w   

将命令历史保存至命令历史文件中

!! 

执行上一个命令

!number

执行命令历史中第几条命令

   7、通配符等等

          shell中的通配符:bash中常用的通配符有”*“,”?“,”[]“

           ① *   表示匹配任意零个或多个字符(带有*前字符的文件)

                

                

            ② ?  表示匹配任意单一字符(带有?前字符并且后面还有字符的文件)

                

               ??  表示匹配任意两个字符

                

            ③ []  匹配任何包含在方括号内的单字符

                

 

二、shell中的引用 

   1、shell中的引用:在bash中有很多特殊字符,这些特殊字符就具有特殊含义。引用就是通知shell将这些特殊字符当作普通字符来处理。

            ①转义字符“\”:如果将\放到特殊字符前面,shell就忽略这些特殊字符的原有含义,把它们当作普通字符对待。

           

           

           

           

    说明:*\*中前一个*表示匹配任意多个字符,\*表示将*转移为普通字符,则*\*表示匹配任意字符但是以*结尾的目录。

 

           

     说明:命令后加\后回车即可换行,在>后面可继续输入命令,再次回车即可命令执行。

       

           

           

   说明:想创建一个名为file 4的文件(中间有空格),则用\加空格转义空格即可创建。

 

       ②单引号:如果将字符串放到一对单引号之间,那么字符串中所有字符的特殊含义被忽略。强引用(则输入单引号内的字符)

             

             

             

             

          ③双引号:双引号的引用与单引号基本相同,包含在双引号内的大部分特殊字符可以当作普通字符处理,但是仍然有一些特殊字符保留自己的特殊含义,比如”$“和“\”以及“ ` ”  

         (双引号中,除了$ \ ` 其他所有特殊字符都不保留自己的特殊含义变成普通字符)

                

                

            说明:`date`表示date命令先执行下

                         echo `date`表示date命令执行完后将它的结果打印在屏幕上

三、命令帮助 

      1、①内部命令:cd ,type等

              用法:help 命令

            ②外部命令:ls,mkdir等

               用法:命令 --help

            (命令手册manual)

               用法:man 命令

 

     2、man手册分段

 

NAME

命令名称及功能简要说明

SYNOPSIS

格式说明,用法说明,包括可用的选项

DESCRIPTION 

命令功能的详尽说明,可能包括每一个选项的意义

OPTIONs    

选项,说明每一个选项的意义

EXAMPLE 

示例,举例说明

FILES     

   此命令相关的配置文件

AUTHOR    

作者

REPORTING BUGS 

 bug反馈

COPYRIGHT

版权

SEE ALSO  

参见

    3、man手册章节

           一般从1到9哪个章节先出现就显示哪个,如man mount就显示第8章节,那如何知道命令有哪些章节呢?用whatis read去查看。

                  (如:man read,man 2 read)

   

1

可执行程序或用户命令,/bin,/usr/bin,/usr/local/bin

2

系统内核可调用的函数与工具

3

c库调用

4

特殊文件,如设备文件,系统上的设备文件只是设备的访问入口,文件中不存储任何内容

5

文件格式,配置文件的格式说明,举例passwd

6

  games游戏,休闲益智类的游戏使用帮助

7

杂项,不便归类的杂项,Miscellaneous

8

系统管理员可用的管理命令,/sbin,/usr/sbin,/usr/local/sbin

9

跟kernel有关的文件

4、man手册符号说明:

[]

表示可选内容

<>

必须提供的内容

a|b|c

多选一

同类内容可出现多个

{} 

分组

 

          ①翻屏:

下翻一页

空格

上翻一页

b

下翻一行

回车

上翻一行

k

 

          ②查找关键字:

                      /关键字   向后

                      

                      

                      

                           n 下一个

                           N 前一个

                          ?关键字

                          N 下一个

                          n  上一个

               ③退出:q

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值