Linux shell 的 test 命令用法詳解

 基本格式:test expressionexpression為test命令構造的運算式。這裡expression是test命令可以理解的任何有效運算式,該簡化格式將是讀者可能會踫見的最常用格式傳回值:test命令或者返回0(真) 或者返回1(假).test可理解的運算式類型分為四類:    運算式判斷    字串比較    數字比較    檔案比較1)判斷運算式if test  (運算式為真)if test !運算式為假test 運算式1 –a 運算式 2               

shell指令碼開發

    shell指令碼編寫基礎2008-04-03 13:16在Linux系統中,雖然有各種各樣的圖形化介面工具,但是sell仍然是一個非常靈活的工具。Shell不僅僅是命令的收集,而且是一門非常棒的程式設計語言。您可以通過使用shell使大量的任務自動化,shell特別擅長系統管理任務,尤其適合那些易用性、可維護性和便攜性比效率更重要的任務。下面,讓我們一起來看看shell是如何工作的:建立一個指令碼Linux中有好多中不同的shell,但是通常我們使用bash (bourne again

shell中確保只有一個進程在執行

shell中實現保證同一時間內只有一個進程在實現: 1.lockf命令 2.簡單實現:i=`ps -ef|grep [n]ew_mvbackup|wc -l`if [ $i -gt 1 ];thenecho "wait for the other mvbackup finish!"exit -1else#do something here 3.另外一種實現:lock_on(){   local f=$1   local freefd=6 ## do not use fd 5   ##

Shell命令介紹和使用

Shell命令介紹和使用1.什麼是Shell在電腦科學中,Shell俗稱殼(用來區別於核),是指“提供使用者使用介面”的軟體(命令解析器)。它類似於DOS下的command.com。它接收使用者命令,然後調用相應的應用程式。2.Shell分兩大類第一類:圖形介面shell(Graphical User Interface shell 即 GUI shell)例如:應用最為廣泛的 Windows Explorer (微軟的windows系列製作系統),還有也包括廣為人知的 Linux shell,

linux shell 之 find

轉貼地址:  Cy158358.cublog.cn  #!/bin/shcheck_patch(){ test -d $1 return}#檢查路徑是否存在check_patch $2if [ $? -ne 0 ]then echo "no such path $2" exit 1fiif [ "$1" = "name" ]then #尋找txt檔案 echo "--------------------------*.txt" find $2 -name

Shell裡的流程式控制制

 1. if 語句"if"運算式如果條件為真,則執行then後的部分:Toggle line numbers   1    if ....; then   2      ....   3    elif ....; then   4      ....   5    else   6      ....   7    fi大多數情況下,可以使用測試命令來對條件進行測試,比如可以比較字串、判斷檔案是否存在及是否可讀等等……通常用" [ ]

source 加要執行的shell script檔案名稱, shell script檔案名稱直接運行於./shell script 的區別

下面的內容基於Linux bash環境在unix中運行shell指令碼的方式有很多種,假設有一個可以啟動並執行指令碼叫test.sh,可以通過source加指令檔名,source test.sh(= . ./test.sh 兩個.), 也可以通過./路徑/test.sh方式運行,如果指令碼在PATH路徑下,還可以位元組通過指令碼名運行,如test.sh。它們之間的區別是:source test.sh的方式讓test.sh在當前的shell

在Linux中用source,dot(.)和直接用指令檔名執行shell指令碼的區別

用source,dot(.)的方式執行shell指令碼的時候,不產生子進程,shell指令碼在當前的shell中運行,shell指令碼運行完成後,在shell指令碼中聲明的變數在當前的shell中是可見的.直接用指令檔名的方式執行shell指令碼的時候,產生子進程,shell指令碼在子進程中運行,shell指令碼運行完成後,在shell指令碼中聲明的變數在當前的shell中是不可見的.驗證過程:在目前的目錄下有一個tt.sh的指令碼內容如下:echo

shell 知識點補充(6)-exit/expr

1、Linux命令之exit - 退出當前shell用途說明exit命令用於退出當前shell,在shell指令碼中可以終止當前指令碼執行,不退出的話,可能會繼續執行後面的程式。 常用參數格式:exit n退出。設定退出碼為n。(Cause the shell to exit with a status of n.) 格式:exit退出。退出碼不變,即為最後一個命令的退出碼。(If n is omitted, the exit status is that ofthe  last 

shell中提取子串

/* *此文參考地址:*////注意:本人使用ubuntu11.4,使用sh  test 運行shell指令碼報錯,需使用/bin/bash  test 運行才能得到正確的結果shell中字串的截取2010-06-24 00:40str="abc123abcABC"#計算字串的長度echo ${#str}    #12#位置參數有關操作echo ${#*}      #位置參數的個數echo ${#@}      #位置參數的個數和上面的效果一樣echo $*        

Ubuntu/Linux Tips (shell 快速鍵)

收集常用技巧,備忘。不定期更新。1. 快速鍵終端快速鍵:CTRL + C: 停止CTRL + Z: 切換到後台CTRL + D: 登出當前會話CTRL + W: 刪除游標前的命令參數CTRL + U: 刪除游標前的所有字元CTRL + K: 刪除游標後的所有字元CTRL + A: 將游標移到最前CTRL + E: 將游標移到末尾CTRL + L: 清屏CTRL + R: 搜尋曆史命令2. 檔案管理檔案搜尋:$ find . -name "*.py[co]"

第一個shell程式:hello world

    1 shell script必須具備可讀與可執行(rx)的許可權。     2 script的執行方式的區別:      1)sh script_name或./script_name:在子進程中執行(一個新的bash環境)            2)source script_name:在父進程中執行    【提示】當子進程完成後,子進程內的各項變數或者操作將會結束而不會傳回到父進程中     3  script的編程習慣          

Linux下定時切割Nginx訪問日誌並打包壓縮的Shell指令碼

之前寫過這篇文章,但是由於上次的資料丟失故障這篇日誌沒有了。於是我又重新寫了這個指令碼,再次貼出來,給大家。#!/bin/bashlogs_path=/home/logs/www/arch_log_path=${logs_path}$(date -d "yesterday" +"%Y%m/%d")/mkdir -p ${arch_log_path}cd ${logs_path}for i in `ls *.access.log`do tar zcf ${i}.tar.gz -C $

判斷IP是否正確的shell 指令碼

判斷IP是否正確的shell 指令碼 [複製連結]  #! /bin/bashcheckip() {        if echo $1 |egrep -q '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' ; then                a=`echo $1 | awk -F. '{print $1}'`                b=`echo $1 | awk -F. '{print $2}'`             

linux中shell變數

為使shell編程更有效,系統提供了一些shell變數。shell變數可以儲存諸如路徑名、檔案名稱或者一個數字這樣的變數名。shell將其中任何設定都看做文本字串。 有兩種變數,本地和環境。嚴格地說可以有4種,但其餘兩種是唯讀,可以認為是特殊變數,它用於向shell指令碼傳遞參數。 1 什麼是shell變數 按照定義來說,變數是存放裝置中的一些可讀寫的儲存單元.變數可以定製使用者本身的工作環境。使用變數可以儲存有用資訊,使系統獲知使用者相關設定。變數也用

Shell中read的常用方式

文章目錄 read命令的文法:處理輸入 原文:Linux Shell Scripting Tutorial V2.0read命令的文法:read -p "Prompt" variable1 variable2 variableN-p "Prompt": 顯示提示資訊(和使用者輸入同一行顯示)variable1: 使用者輸入的第一個值將賦給variable1variable2:

推薦一個fedora 15,16, 17, 18非常好用的gnome-shell擴充。帶工作列

官方網站:http://intgat.tigress.co.uk/rmy/extensions/index.html該擴充的主要功能有:Move the clock                                      把中的時間移到右邊去Favourites in panel                             在頂部panel顯示最喜愛的程式的捷徑。Applications menu in panel            

作業系統外殼(SHELL)對象

以下沒有例舉出所有Shell Object的方法,要獲得更詳細內容請參考MSDN的<Shell Object>IShellDispatch : public IDispatch {// 參數要指定控制台程式的名字,所有程式都以.cpl以尾碼HRESULT ControlPanelItem(BSTR szDir); // Causes the Start Menu to refresh its contentsHRESULT RefreshMenu( void); //

編寫簡單的 Linux Shell 指令碼

做分布式並行計算的時候經常需要將編譯好的檔案傳到各計算節點的同一目錄下.當計算節點很多時,這各工作相當繁瑣.我們下面舉例實現這一傳送檔案到各節點的指令碼.1,建立檔案.檔案名稱為 transfile,內容如下#!/bin/bashscp $1 node1:$HOMEscp $1 node2:$HOME........scp $1 noden:$HOME指令碼的第一行,以“#!”開始是特別的提示-它告訴shell應該用哪一個程式來解釋我的指令碼。在這個例子裡,我使用bash shell /bin/

linux shell指令碼之if判斷

 linux if命令無論什麼編程語言都離不開條件判斷。SHELL也不例外。if list thendo something hereelif list thendo another thing hereelsedo something else herefi EX1:#!/bin/shSYSTEM=`uname -s` #擷取作業系統類型,我本地是linuxif [ $SYSTEM = "Linux" ] ; then #如果是linux的話列印linux字串echo "Linux"elif

總頁數: 301 1 .... 54 55 56 57 58 .... 301 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.