一 檔案表示式
常規的
# 特殊-->e是不是一般檔案!
if [ -f file ] 如果檔案存在(普通檔案)
if [ -d ... ] 如果目錄存在(directory)
if [ -s file ] 如果檔案存在且非空(socket)
if [ -r file ] 如果檔案存在且可讀(可讀)
if [ -w file ] 如果檔案存在且可寫(可寫)
if [ -x file ] 如果檔案存在且可執行(可執行)
幫助文件:man test
root:不受許可權的影響,注意這一點!
需求1:檔案存在並且是普通檔案輸出1
[ -f temp ] && echo 1 || echo 0
涉及:簡單的邏輯控制!
需求2:判斷許可權
[root@server1 mnt]# chmod 000 temp
[root@server1 mnt]# ll temp
---------- 1 root root 11 aug 29 12:29 temp
[root@server1 mnt]# [ -r temp ] && echo 1 || echo 0
1
說明:不完全看許可權,看最終的結果,針對root許可權有時候沒有作用!
需求3:shell變數測試
[root@server1 mnt]# file1=/etc/rc.local
# 是不是檔案!-->最好加上雙引號,表示乙個整體!
[root@server1 mnt]# [ -f "$file1" ] && echo 1 || echo 0
1# 對單個檔案或目錄變數的測試需要加雙引號,避免錯誤
需求4:將多個命令寫到{}中
#!/bin/bash
[ $1 -eq 8 ] ||
# 條件表示式判斷條件後面執行多條命令語句寫法
說明:用{}放多個命令,{}表示後面的命令是乙個整體!
條件表示式特點:相對於條件表示式,簡潔,短小精悍!
相關對比
1、test 測試表示式
2、[ 測試表示式 ] #兩邊需要有空格
3、[[ 測試表示式 ]]
4、(( 測試表示式 )) # 無需空格,常規數學符號!
說明:第一種和第二種是等價的,第三種是擴充套件的test命令(擴充套件的地方),語法4常用於計算
在 雙中括號中可以使用萬用字元等進行模式匹配,&& || > < 等操作符可以直接應用於雙中括號中,但不能用於單中括號中
二字串表示式
-n nonzero ---->長度是不是非0
-z zero ---->字串的長度是不是非0
"串1" = "串2" ---->兩個字串是不是相等
"串1" != "串2" ---->兩個字串是不是不相等
# 注意1:所有的字串測試操作必須用""引起來!
# 注意2:比較符號的兩端必須有空格
空格導致的問題
[root@server1 mnt]# [ "wzj"="1" ]&& echo 1 || echo 0
1[root@server1 mnt]# [ "wzj" = "1" ]&& echo 1 || echo 0
0
相關練習
# 以"wzj"載體
[root@server1 mnt]# [ -n "wzj" ] && echo 1 || echo 0
1[root@server1 mnt]# [ -z "wzj" ] && echo 1 || echo 0
0[root@server1 mnt]# [ ! -z "wzj" ] && echo 1 || echo 0 # 取反
1
說明:關於變數的省略!
注意:如果變數不存在(未定義),則預設長度為0!
相關模仿
# 定位-->sed -n "30,31p" /etc/init.d/network
vim /etc/init.d/network # 提供的例子
[ "$" = "no" ] && exit 6
三整數表示式
特點:文字形式進行數字比較!
注意:不同場景使用不同的符號!
擴充套件:如果混用,在中對於特殊符號(<>)進行比較需要反斜槓\轉移!
相關結論
對2的說明
[root@server1 mnt]# [[ 2 > 11 ]] && echo 1 || echo 0
1# 邏輯比較(第一位)
R中的假設檢驗(三)相關與回歸
學到哪兒寫到哪兒,這篇後面會隨時更新。一 相關分析 研究變數與變數間的關係就需要分析其相關性,就需要使用相關分析,相關分析比較簡單。它分為皮爾遜相關 斯皮爾曼相關 肯德爾等級相關,並且他們有各自的適用範圍 1 pearson,皮爾遜積差相關係數,適用於兩個變數為連續變數,且兩個變數需要嚴格符合正態性...
css3相關筆記(三)
1.每乙個方向上的邊框形狀並不是矩形的,其實是三角形或梯形的,配合圓角邊框可以製作美麗花瓣。2.css3 3d變換效果 transform transform rotatex 360deg 表示在x軸3d旋轉360度。transform rotatey 360deg 表示在y軸3d旋轉360度。tr...
css3相關筆記(三)
1.每乙個方向上的邊框形狀並不是矩形的,其實是三角形或梯形的,配合圓角邊框可以製作美麗花瓣。2.css3 3d變換效果 transform transform rotatex 360deg 表示在x軸3d旋轉360度。transform rotatey 360deg 表示在y軸3d旋轉360度。tr...