码迷,mamicode.com
首页 > 系统相关 > 详细

Shell编程

时间:2016-07-14 15:59:54      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:bash   shell编程   

bash及其特性

    shell: 外壳

    GUI : Gnome, KDE , XFace

    CLI : sh, csh(Bill Joy), ksh(商业产品), bash(bourne again shell), tcsh, zsh

    

root, student用户登录


进程:在每个进程看来,当前主机上只存在内核和当前进程

进程是程序的副本,进程是程序执行实例。


bash : 

    1、命令历史

    2、管道、重定向

    3、命令别名

    4、命令行编辑

    5、命令行展开

    6、文件名通配

    7、变量

    8、编程


命令行编辑

    Ctrl + a : 跳到命令行行首

    Ctrl + e : 跳到命令行行尾

    Ctrl + k : 删除光标处所在后面所有内容

    Ctrl + u : 删除光标处所在前面所有内容

    Ctrl + 左/右:跳转单词间

    Ctrl + l:清屏

    


命令历史

    查看命令历史:history

        -c : clear

        -d OFFSET [n] :删除指定位置命令

        -a 命令历史追加到历史文件中

        -w 保存命令历史至历史文件中


环境变量:

    PATH: 命令搜索路径

    HISTSIZE:命令历史大小

    HISTFILE:命令历史文件

    HISTFILESIZE:命令历史文件大小

    HISTCONTROL:

        ignoredups 忽略重复

        ignorespace 忽略

    

命令历史的使用技巧:

    !n : 执行命令历史中的第n条命令

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

    !! :最后一条命令

    !string : 执行最后以string开头的命令

    !$:引用最后一条命令的最后一个参数    ESC .      Alt + .


    ~/.bash_history


命令别名alias CMDALIAS=‘COMMAND [options] [arguments]‘

在shell中定义的别名仅在当前shell生命同期中有效;别名的有效范围为当前shell进程;

\command : 原命令

命令替换:把命令中某个子命令替换为其执行结果的过程

    `COMMAND`    =    $(COMMAND)

    ``:命令替换

    ‘‘: 强引用,不能替换

    "":弱引用,变量可替换


文件名通配:globbing

    *:任意长度任意字符

    ?:任意单个字符

    []:匹配指定范围内任意单个字符

    [^] :匹配指定范围外任意单个字符

    [:space:] 单个空白字符    

    [:punct:] 标点符号

    [:lower:] 小写字母

    [:upper:] 大写字母

    [:alpha:] 大小写字母

    [:digit:] 数字

    [:alnum:] 数字和大小写字母



本文出自 “原创代码” 博客,请务必保留此出处http://yuanchuang.blog.51cto.com/9897344/1826260

Shell编程

标签:bash   shell编程   

原文地址:http://yuanchuang.blog.51cto.com/9897344/1826260

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!