檔案測試運算子用於檢測檔案的各種狀態和屬性,目前支援的運算子如下:
要特別注意的是-s file
判斷檔案是否為空時,不為空才返回true。
變數 file 表示檔案/user/chenshuyi/hello.sh
,它的大小為 52 位元組,具有 rwx 許可權。下面的**,將檢測該檔案的各種屬性:
#!/bin/bash
# author:陳樹義
# site:
file="/user/chenshuyi/hello.sh"
if [ -r $file ]
then
echo "檔案可讀"
else
echo "檔案不可讀"
fiif [ -w $file ]
then
echo "檔案可寫"
else
echo "檔案不可寫"
fiif [ -x $file ]
then
echo "檔案可執行"
else
echo "檔案不可執行"
fiif [ -f $file ]
then
echo "檔案為普通檔案"
else
echo "檔案為特殊檔案"
fiif [ -d $file ]
then
echo "檔案是個目錄"
else
echo "檔案不是個目錄"
fiif [ -s $file ]
then
echo "檔案不為空"
else
echo "檔案為空"
fiif [ -e $file ]
then
echo "檔案存在"
else
echo "檔案不存在"
fi
輸出結果為:
檔案可讀
檔案可寫
檔案可執行
檔案為普通檔案
檔案不是個目錄
檔案不為空
檔案存在
c 入門教程 十六
上一節我們講到了指標,這一節我們來用一用它 前面我們說過,函式的引數相當於是在函式開始的時候宣告的變數,當函式被呼叫時這個變數被賦予實際的值。然而當函式被呼叫結束以後,函式的引數也將消失。如下 然後我們開始去取陣列中後面的元素的資料。因為陣列是連續的空間,也就是說下乙個資料的位址等於 當前資料位址 ...
Shell 入門教程(四) 如何執行shell指令碼
執行 shell 指令碼有兩種方式,一種是通過 bash 命令,一種是作為可執行程式執行。我們寫了下面這樣乙個 shell 指令碼,並將其儲存為hello.sh bin bash echo hello shell.如果我們用bash命令執行,那麼是這樣的 bash hello.sh。執行後會輸出 h...
Shell 入門教程(十七) 如何使用陣列
shell 中有陣列這個概念,陣列中可以存放多個值。但 shell 只支援一維陣列,不支援多維陣列,初始化時不需要定義陣列大小。與大部分程式語言類似,陣列元素的下標由0開始。shell 陣列用括號來表示,元素用 空格 符號分割開,語法格式如下 array name value1 valuen 例如 ...