成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全面講解CentOS shell中知識

系統
在CentOS shell編程時同樣可以使用參數,Shell有位置參數和內部參數。和CentOS shell程序中的一個表達式等。

什么是CentOS shell程序呢? 簡單的說CentOS shell程序就是一個包含若干行shell或者linux命令的文件.就像編寫高級語言的程序一樣,編寫一個shell程序需要一個文本編輯器.如VI等.
在文本編輯環境下,依據shell的語法規則,輸入一些shell/linux命令行,形成一個完整的程序文件.

CentOS shell參數
如同ls 命令可以接受目錄等作為它的參數一樣,在CentOS shell編程時同樣可以使用參數。Shell有位置參數和內部參數。

1、位置參數
由系統提供的參數稱為位置參數。位置參數的值可以用$N得到,N是一個數字,如果為1,即$1.類似C語言中的數組,Linux會把輸入的命令字符串分段并給每段進行標號,標號從0開始。第0號為程序名字,從1開始就表示傳遞給程序的參數。如$0表示程序的名字,$1表示傳遞給程序的***個參數,以此類推。

2、內部參數
上述過程中的$0是一個內部變量,它是必須的,而$1則可有可無。和$0一樣的內部變量還有以下幾個。
$#  ----傳遞給程序的總的參數數目
$?  ----上一個代碼或者CentOS shell程序在shell中退出的情況,如果正常退出則返回0,反之為非0值。
$*  ----傳遞給程序的所有參數組成的字符串。
下面舉例進行說明:
建立一個內容為如下的程序P1:

  1. echo “Program name is $0”  
  2. echo “There are totally $# parameters passed to this program”  
  3. echo “The last is $?”  
  4. echo “The parameters are $*”  

執行后的結果如下:

  1. [beichen@localhost bin]$ P1 this is a test program   //傳遞5個參數  
  2. Program name is /home/beichen/bin/P1    //給出程序的完整路徑和名字  
  3. There are totally 5 parameters passed to this program  //參數的總數  
  4. The last is 0                    //程序執行結果  
  5. The parameters are this is a test program  //返回有參數組成的字符串  

下面我們利用內部變量和位置參數編寫一個名為del的簡單刪除程序:

  1. #name: del  
  2. #author: liangnian  
  3. #this program to compress a file to the dustbin  
  4. if test $# -eq 0   
  5. then  
  6.   echo “Please specify a file!”   
  7. else  
  8.   gzip $1   //先對文件進行壓縮  
  9.   mv $1.gz $HOME/dustbin  //移動到回收站  
  10.   echo “File $1 is deleted !”  
  11. fi  

變量表達式
在上面我們編寫的小程序中我們用到了一個關鍵字test,其實它是CentOS shell程序中的一個表達式——比較(test)。通過和CentOS shell提供的if等條件語句(后面我們會介紹)相結合我們可以方便的完判斷。
其用法如下:
test 表達式
表達式所代表的操作符有字符串操作符、數字操作符、邏輯操作符以及文件操作符。其中文件操作符是一種CentOS shell獨特的操作符,因為shell里的變量都是字符串,為了達到對文件進行操作的目的,于是才提供了這樣的一種操作符。

1、 字符串比較
作用:測試字符串是否相等、長度是否為零,字符串是否為NULL(注:bash區分零長度字符串和空字符串)
常用的字符穿操作符有:
=   比較兩個字符串是否相同,同則為“是”
!=   比較兩個字符串是否相同,不同則為“是”
-n   比較字符串長度是否大于零,如果大于零則為“是”
-z   比較字符串的穿度是否等于零,如果等于則為“是”

2、 數字比較
這里區別于其他編程語言,test語句不使用>、<、>=類似的符號來表達大小的比較,而是用整數式來表示這些。

  1. -eq  相等  
  2. -ge  大于等于  
  3. -le   小于等于  
  4. -ne   不等于  
  5. -gt   大于  
  6. -lt    小于 

3、 邏輯操作
!  反:與一個邏輯值相反的邏輯值
-a  與(and):兩個邏輯值為“是”返回值才為“是”,反之為“否”
-o  或(or):兩個邏輯值有一個為“是”,返回值就為“是”

4、 文件操作
文件測試表達式通常是為了測試文件的信息,一般由腳本來決定文件是否應該備份、復制或刪除。由于test關于文件的操作符有很多,我們只列舉一些常用的。

  1. -d  對象存在且為目錄返回值為“是”  
  2. -f  對象存在且為文件返回值為“是”  
  3. -L  對象存在且為符號連接返回值為“是”  
  4. -r  對象存在且可讀則返回值為“是”  
  5. -s  對象存在且長度非零則返回值為“是”  
  6. -w  對象存在且可寫則返回值為“是”  
  7. -x   對象存在且可執行則返回值為“是”  
  8. file1 –nt(-ot) file2  文件1比文件2新(舊) 

在這里就簡單的介紹下CentOS shell。

【編輯推薦】

  1. 關于CentOS使用的簡介
  2. Linux CentOS常用命令的各種使用方法
  3. CentOS系統是Linux常見版本之一
  4. CentOS install服務器安裝運行
  5. CentOS服務器系統中藏有神秘力量
責任編輯:小霞
相關推薦

2010-04-30 18:20:23

Unix系統

2010-05-04 09:45:28

Unix系統

2010-05-04 16:33:39

Unix系統

2010-05-05 15:02:39

Unix系統

2010-04-29 18:01:42

Unix服務器

2010-04-27 11:32:41

2010-05-05 13:22:29

Unix Shell

2009-10-23 18:29:02

linux Debia

2010-06-12 15:49:54

TCP IP協議基礎知

2010-04-26 13:53:47

Unix Shell

2010-01-07 16:02:41

2009-12-11 10:38:22

策略路由原理

2010-05-07 13:04:11

Unix Shell

2010-02-23 15:09:58

CentOS FTP

2009-11-14 09:42:01

2009-10-30 09:30:33

2009-10-28 11:09:59

2009-09-23 15:50:21

Hibernate u

2009-09-24 10:50:31

Hibernate主鍵

2009-09-29 10:12:03

Hibernate A
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 性色av一区二区三区 | 免费一级片 | 日韩伦理一区二区三区 | 黑色丝袜三级在线播放 | 国产福利91精品一区二区三区 | 婷婷激情在线 | 精品国产乱码久久久久久久久 | 日韩在线观看 | 激情影院久久 | 国产一区二区视频免费在线观看 | 国产精品我不卡 | 麻豆久久久久久久久久 | 久久一区视频 | 亚洲 中文 欧美 | 日韩午夜电影在线观看 | 国产91色在线 | 亚洲 | 国内精品免费久久久久软件老师 | 成人福利在线 | 羞羞视频免费在线观看 | 久久精品99久久 | 国产精品国产成人国产三级 | 成人午夜电影网 | 欧美激情国产日韩精品一区18 | 欧美一区二区三区在线看 | 天天亚洲| 久久天堂网 | 精品av| 久久久综合精品 | 久久爱黑人激情av摘花 | 欧美一区二区三区四区五区无卡码 | www.久久| 成人国产一区二区三区精品麻豆 | 国产精品亚洲成在人线 | 国产精品黄 | 91麻豆精品国产91久久久更新资源速度超快 | 黄色一级电影免费观看 | 三级免费 | 欧美成人一区二免费视频软件 | av在线电影网 | 亚洲欧美中文日韩在线v日本 | 欧美区日韩区 |