2016-1-31 linux基础学习5

bash及其特性:
    shell:外壳
    GUI:Gnome,KDE,Xfce
    GLI:sh,csh,ksh,bash,tcsh,zsh
        
    root,student
    程序:进程
    进程:在每个进程看来,当前主机上只存在内核和当前进程
    进程是程序的副本,进程是程序执行示例
    用户工作环境:bash
        #:管理员
        $:用户
        
        shell, 子shell(shell不知道其他shell的存在)
        pstree:查看当前登录了几个shell
        exit退出当前shell
        
bash:
    1、命令历史,命令补全
    2、管道、重定向
    3、命令别名
    4、命令行编辑器
    5、命令行展开
    6、文件名通配
    7、变量
    8、编程

    
    
命令行编辑
    命令光标跳转
    ctrl+a:跳到命令行首
    ctrl+e:跳到命令行尾
    ctrl+u:删除光标至命令行首的内容
    ctrl+k:删除光标至命令行尾的内容
    ctrl+左右箭头,跳到上一个单词
    ctrl+l:清屏
命令历史
    history:查看命令历史
        -c:清空命令历史
        -d count:删除第n行命令
        -d count1 count2:删除自第n1行至(n1+n2)行命令
        -w:保存命令历史至历史文件中(ls -a 中会显示的隐藏文件.bash_history)
    
    环境变量
    PATH:命令搜索路径
    HISTSIZE:命令历史缓冲区大小
    
    命令历史使用技巧:
        !n:执行命令历史中的第n条命令
        !-n:执行命令历史中的倒数第n条命令
        !!:执行上一条命令
        !string:执行命令历史中最近一个以指定字符串开头的命令
        !$:引用上一个命令的最后一个参数
        Esc后放开按".":引用上一个命令的最后一个参数
        Alt+".":引用上一个命令的最后一个参数
    
    ***命令补全:(路径补全)搜索PATH环境变量所指定的每个路径下以我们给出的字符串开头的可执行文件,如果多于一个,两次Tab,可以给出列表;否则将直接补全
    
        路径补全:按两次Tab键,搜索我们给出的起始路径下的每个文件名,并试图补全
        
命令别名
    alias A='COMMAND [OPTION] [arguments]'        
    在shell中定义的别名仅在当前shell生命周期中有效,别名的有效范围仅为当前shell进程    
    使用别名自身的意义:\COMMAND    
    wKioL1auCwLgCQE0AAAYepYSuXQ552.gif

    命令替换:$(COMMAND),反引号:‘COMMAND‘
        把命令中的某个子命令替换为其执行结果的过程    
        
    ***bash支持的引号:
        
        反引号' ' :命令替换
        双引号“ ”:弱引用,可以实现变量替换
        单引号' ' :强引用,不完成变量替换
      

2016-1-31 linux基础学习5_第1张图片


wKioL1auC6yx3zxQAAAjMHmj7Rw127.gif

 
文件名通配,globbing
        *:任意长度的字符
        ?:任意单个字符
        []:匹配指定范围内的任意单个字符
            [abc] [a-m] [a-z]    [A-Z] [a-zA-Z] [0-9a-zA-Z]
            [[:space:]]:空白字符
            [[:punct:]]:标点符号
            [[:lower:]]:小写字母
            [[:upper:]]:大写字母
            [[:alpha:]]:大小写字母
            [[:digit:]]:数字
            [[:alnum:]]:数字和大小写字母
                
        [^]:匹配指定范围外的任意单个字符
    

2016-1-31 linux基础学习5_第2张图片

wKioL1auC_zztWS6AAASF9sJxlA427.gif

2016-1-31 linux基础学习5_第3张图片


    练习:
    1、创建a123, cd6, c78m, c1, my, m.z, k 67, 8yu, 789等文件
        以上文件是以逗号隔开,其他符号都是文件名的组成部分
    2、显示所有以a开头或m开头的文件
    3、显示所有文件名中包含了数字的文件
    ?4、显示所有数字结尾且文件名中不包含空白的文件
    5、显示文件名中包含了非字母或数字的特殊符号的文件

2016-1-31 linux基础学习5_第4张图片

你可能感兴趣的:(命令,bash,历史命令)