shell 學習記錄一

來源:互聯網
上載者:User

標籤:shell linux 基礎知識 命令

1、一般使用者的命令提示字元是 $   root 的命令提示字元是 #

2、在bash中每個命令之間都是通過 分號或者分行符號來分割的例如

      $ cmd1 ; cmd2

3、echo 每次調用後預設會添加分行符號,後面的內容可以用 單引號,也可以用雙引號,也可以不用引號。區別是

      使用不帶單引號的echo時 沒法顯示 “;”變數在單引號中也無效,變數一般加雙引號

      雙引號中不能列印特殊符號,需要用轉義符號

4、echo -e "\e[1;31m 這裡是內容 [0m " 這表示顯示彩色字型,30,31,32,33,34,35,36,37 分別表示 黑色,紅色,綠色,***,藍色。。。。

5、echo -e "\e[1;41m 這裡是內容 [0m" 這表示顯示彩色背景  40,41,42.43,44,分別表示黑色,紅色,綠色,***。。。。

6、printf 可以進行格式化輸出,需要手動輸入換行

      printf  "%-5s  %-10s  %-4.2s\n" NO  NAME  Mark   表示設定寬度分別為 5個,10個字元,4.2 表示可以保留兩位小數 ,-表示靠左對齊,\n表示換行

7、如果要在PATH中添加一條新路徑,使用:export PATH="$PATH:/home/usr/bin"  也可以用 如下

       PATH=$PATH:/home/usr/bin

        export $PATH

8、uid 可以擷取使用者的id號 ,可以直接用 echo $UID 查看。root使用者的uid是 0

9、可以用shell來進行數字運算

      方法1、用let,變數名前不需要加$

                   no1=1;

                   nod2=2;

                   let result=nod1+nod2

                   nod自加操作   let nod1++ 自減  let nod1--   

                   let no+=6   和  let no=no+6 是一樣的意思

      方法2、result=$[ nod1 + nod2 ]  或者 result=$[ $nod1 + 5 ]

      方法3、result=$(( nod1 + nod2 ))  或者 result=$ (( $nod1 + 5))

      方法4、result=`expr 3 + 4` 或者 result=$(expr $nod1 + 5) 以上計算方法均不支援浮點數

      方法5、result=`echo "scale=3; $nod1/$nod2" |bc` 

                   利用bc進行小數計算,scale表示小數點的位元

                   echo "obase=10;ibase=2;100" |bc 

                    將二進位的100轉換成十進位

10、檔案描述及重新導向

  •         0  ---  stdin  (標準輸入)

  •         1 ----- stdout (標準輸出)

  •         2----- stderr (標準錯誤)

  • cmd 2> error.txt  將錯誤全部重新導向至error.txt

  • cmd 2>&1 all.txt 將所有輸重新導向至all.txt 等於 cmd  &> all.txt

11、數組

        arry_var=(1 2 3 4 5 6)

        列印出特定數組的元素 echo ${arry_var[1]}  其值為 2

        列出數組中的所有值  echo ${arry_var[*]} 結果為 1 2 3 4 5 6

12、關聯陣列

        declare -A  fruites_value

        fruits_value=([apple]=‘10yuan‘ [orange]=‘15yuan‘)

        顯示特定數組內容 echo ${fruits_value[apple]} 結果為 10yuan

        列出所有索引列表  echo ${!fruits_value[*]}


本文出自 “如果技術可以做成藝術!” 部落格,請務必保留此出處http://jesus110.blog.51cto.com/376008/1575676

shell 學習記錄一

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.