zoukankan      html  css  js  c++  java
  • csh 语法实例参考

    csh实例 参考:

    #!/bin/csh -vx
    #csh -vx show the command before running to help debug

    #just to check syntax
    #csh -n $0

    #argv

    if ($#argv < 2) then
        echo "Sorry, but you entered too few parameters"
        echo "usage:  $0 arg1 arg2
        exit
    endif
    set arg1 = $1
    set arg2 = #2

    foreach i ($*)
       echo $i
    end
       
    #execute commands
    echo 
    "Hello there `whoami`.  How are you today?"
    echo 
    "You are currently using `hostname` and the time is `date`"
    echo 
    "Your directory is `pwd`"
    whoami
    hostname
    date
    pwd

    #var
    set name = Mark
    echo $name
    set name = 
    "Mark Meyer" # if the string has space, must use ""
    echo $name
    # it means set to NULL
    set name = 
    unset name
    # get user input
    set x = $<  
    set current_user = `whoami`

    #buildin vars
    echo $user      # who am I?
    echo $status    # a numeric variable, usually used to retun error codes

    #Arithmetic variables
    @ i = 2
    @ k = ($x - 2) * 4
    @ k = $k + 1
    @ i--
    @ i++

    #array
    set name = (mark sally kathy tony)
    echo $#name    # num of the array
    echo $name[1]
    echo $name[4]
    echo $name[2-3]
    echo $name[2-]        # all elements from 2 to the end
    echo $name[1-3]
    echo $name[$i]
    set name = ($name doran)
    set name = (doran $name)
    set name = ($name[1-2] alfie $name[3-])
    shift name  # get rid of the frist element of the array
    shift #if no argument is given, it will get rid of argv

    #Expressions and operators
    ==        equal     (either strings or numbers)
    !=        not equal     (either strings or numbers)
    =~        string match
    !~        string mismatch
    <=        numerical less than or equal to
    >=        numerical greater than or equal to
    >         numerical greater than
    <         numerical less than

    -e file           file merely exists (may be protected from user)
    -r file           file exists and is readable by user
    -w file           file is writable by user
    -x file           file is executable by user
    -o file           file is owned by user
    -z file           file has size 0
    -f file           file is an ordinary file
    -d file           file is a directory

    !   -- negate                 
    &&  -- logical and
    ||  -- logical or

    #if-else
    # run cmd as if expression
    if ({grep -s junk $1}) then  
       echo 
    "We found junk in file $1"
    endif
    # check if the var is defined
    if ($?dirname) then 
        ls $dirname
    endif

    if (-e somefile) then
     grep $1 somefile
    else
     echo 
    "Grievous error!  Database file does not exist".
    endif

    #foreach
    foreach i (*)
        if (-f $i) then
            echo 
    "============= $i ==================="
            head $i
        endif
        if (-d $i) then
            (cd $i; headers)
        endif
    end

    #while
    while ($#argv > 0)
        grep $something $argv[1]
    end

    @ n = 5
    while ($n) 
         # do something
         @ n--
    end

    #switch-case
    switch ($argv[$i])
     case quit:
            break        # leave the switch statement
     case list:
            ls
            breaksw
     case delete:
     case erase:
            @ k = $i + 1
            rm $argv[$k]
            breaksw
    endsw
        
    #here document
    grep $i <<HERE
    John Doe   101 Surrey Lane    London, UK    5E7 J2K
    Angela Langsbury   99 Knightsbridge, Apt. K4     Liverpool
    John Major  10 Downing Street  London
    HERE

    cat > tempdata <<ENDOFDATA
    53.3 94.3 67.1
    48.3 01.3 99.9
    42.1 48.6 92.8
    ENDOFDATA

    exit 0

    来自:http://www-cs.canisius.edu/ONLINESTUFF/UNIX/shellprogramming.html

    完!

  • 相关阅读:
    CS001496 Gather data from web page with JavaScript, WebKit, and Qt
    中文 英特尔® 软件网络 blog
    CS001496 Gather data from web page with JavaScript, WebKit, and Qt
    Qt Port of WebKit ¶
    Category:Qt WebKit Nokia Developer Wiki
    Qt webKit可以做什么(四)——实现本地QObject和JavaScript交互
    看了潘爱民老师的关于smartcache for webkit的paper
    Qt 4.7: QWebInspector Class Reference
    CS001497 Add data to a web page with JavaScript, WebKit, and Qt
    geventcurl
  • 原文地址:https://www.cnblogs.com/itech/p/2640811.html
Copyright © 2011-2022 走看看