歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> AIX下test命令簡介及使用

AIX下test命令簡介及使用

日期:2017/2/28 14:52:47   编辑:Linux教程

test命令,測試字符串,文件狀態,數字等是否符合我們的需要。
test命令適用於對文件、字符串、數字的檢測。
對於測試輸出結果,可以使用$?檢測,0表示返回正確,1表示返回錯誤。

test命令格式:
test condition 或[ condition ]

一、下面是測試文件的狀態表
-----------------------------
-d 目錄
-f 正規文件
-L 符號鏈接
-r 可讀
-s 文件長度大於0、非空
-w 可寫
-u 文件有suid位設置
-x 可執行
-----------------------------

檢查文件week.txt,是否可寫,和執行。
ls -l week.txt
-rw-r--r-- 1 b4nx group 94 Dec 11 10:14 week.txt
1.檢查是否具有寫的權限:
[ -w week.txt ] 或 test -w week.txt
echo $?
0

2.檢查是否具有可執行權限:
[ -x week.txt ] 或 test -x week.txt
echo $?
1
文件不可執行。

3.檢查可讀權限:
test -r iplist.txt
echo $?
0

4.檢查文件是否為空:
ls -l file.null
-rw-r--r-- 1 b4nx group 0 Dec 28 08:38 file.null
test -s file.null
echo $?
1
1表示否,文件為空或長度為0

5.檢查文件是否為連接文件:
ln ../awk/data.f ldata
ls -l data.f
-rw-r--r-- 2 b4nx group 356 Nov 16 19:50 data.f
創建的是link文件,怎麼這裡顯示的是普通文件呢?
原來創建文件時少寫了參數:-s
rm -r ldata
ln -s ../awk/data.f ldata
ls -l ldata
lrwxrwxrwx 1 b4nx group 13 Dec 28 08:58 ldata -> ../awk/data.f
查看是否為link文件:
[ -L ldata ]
echo $?
0
week.txt文件未普通文件,所以檢查是返回1:
test -L week.txt
echo $?
1
ls -l week.txt
-rw-r--r-- 1 b4nx group 94 Dec 11 10:14 week.txt

6.檢測目錄
[ -d other ]
echo $?
0
cd other
pwd
***/other

使用邏輯操作符
-a:邏輯與,一假則假
-o:邏輯或,一真則真
1.查看2個文件是否都可寫
[ -w video.txt -a -w video2.txt ]
echo $?
0
ls -l video*
-rw-r--r-- 1 b4nx group 195 Dec 10 18:47 video.txt
-rw-r--r-- 1 b4nx group 195 Dec 11 09:02 video2.txt
查看2個文件是否都為link文件:
[ -L video.txt -o -L video2.txt ]
echo $?
1

Copyright © Linux教程網 All Rights Reserved