shell常用知識點

2021-08-03 06:29:01 字數 1168 閱讀 1873

0 shell中if,while的條件語句怎麼寫

test和

字串比較 ==, !=

數字比較 - g,l,e,n,q,t的組合

greater than, less than, equil, not equil, greater equil, less equil

1 shell的字串

str="hello"

str='hello'

那麼單引號和雙引號有什麼區別呢?

單引號是原因輸出不進行變數替換,而雙引號是可以替換的

2. shell的陣列

定義 array=(1,2,3,4)

訪問 $

整個陣列 $, $

陣列長度 $, $

3. shell的命令列引數

命令列引數其實就是陣列,但是沒名字

執行的命令 $0

引數 $n

所有 $* $@

長度 $#

4. shell的數**算

$, expr, let

5. shell中的(())作用

a. 用來擴充套件數**算

x=10

y=20

z=$(($x + $y))

$的作用就是取結果

b. 用來擴充套件邏輯運算

((1 && b))

c. 用來擴充套件流程控制

if ((a < b))

while ((a < b))

for ((i=0; i<10; i++))

6.shell中的輸入

read var

7. shell的浮點運算

網上說可以使用 bc和awk

#!/bin/bash

c=$(echo "(-105.5*7+50*3)/20 + (19^2)/7"|bc)

echo $c

c=$(awk 'begin')

echo $c

jonly@ubuntu:~$ ./test.sh

2222.1464

為什麼是22呢?查詢資料發現需要加上scale=2;

c=$(echo "scale=2;(-105.5*7+50*3)/20 + (19^2)/7"|bc)

浮點運算總結: 使用bc進行運算,使用scale進行除法的位數保留,使用轉換成整數進行比較,使用加法進行四捨五入

mysql常用知識點 mysql 常用知識點。

mysql u root p show databases show tables select from abc order by id limit 0,10 create database bbb exit mysqldump u root p game home backup.sql mysq...

Shell 程式設計知識點

linux 的選項又分為短格式選項和長格式選項。command1 command2.不管command1命令是否執行成功,command2命令都執行。command1 command2.command1命令和command2命令同時執行 command1 command2.只在command1命令執...

shell 知識點備忘

與檔案存在與否的判斷 e 是否存在 f 是否為普通檔案 d 是否為目錄 s 是否為空的檔案 p 是否為管道檔案 b 是否為塊裝置檔案 c 是否為字元裝置檔案 l 是否為軟鏈結 s 是否socket檔案 與檔案許可權有關的判斷 r 是否有可讀的許可權 w 是否有可寫的許可權 x 是否有可執行許可權 u...