• 2009-09-02

    Shell!!

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://moonist.blogbus.com/logs/45614151.html

    Shell,一个神秘的名字~每当听见有人说“首先我们得到一个bash,然后打开一个shell”之类的话就赞叹无比,到底什么是shell呢?俄~ 其实windows里面也有,就是开始-》运行-》cmd,不过不晓得这个算不算严格的shell,unix的shell可是相当强大,什么登陆啊、安装啊、编译啊之类的事情都可以交给shell,不过你得首先写一个脚本来执行。

    目前我了解的相关知识如下:

    ||如何使用chmod

    chmod [ugoa] {+-=} [rwxst] file

    这个是用来改变文件属相的,一个shell脚本写出来只是一个文本文件,想要变成执行文件(用./xxx执行)就要这样:chmod +x file

    ||基本的变量定义

    和其他脚本一样,变量是不用声明的,但是获取该变量的话要使用$符号

    比如: vari=this file

    echo $vari

    恩,注意的是赋值符号不要用空格隔开,否则会error的

    然后还有一些系统变量,比如$HOME, $PATH, $0, $*, $#,$$, $n之类的

    ||基本的条件操作

    if (test $# = 1)

    then

    echo $1

    elif (test $# = 2)

    then

    echo $1

    echo $2

    fi

    ||基本的循环操作

    有for、while、until,和其他的类似,

    ||case操作

    case xxx in

    pat1) do_something;;

    pat2) do_something;;

    esac

    很古怪的语法把~不过功能比其他语言的版本强大,因为xxx可以是字符串或者其他的,匹配的时候也可以使用简单的正则表达式,如想匹配 字符串中有moonist的字符串,pat可以写成*moonist*

     

    这些完了以后就是对linux命令的熟悉了,

    目前我看的命令有file、at、date/chown/chmod/chgrp/cat/cmp/du/df/bc/cd/cal/test等等

     

    OK,就到这里

     


    历史上的今天:

    LUT 2009-09-02

    收藏到:Del.icio.us