linux判斷文件夾是否為空
⑴ 如何在shell中判斷一個文件是否為空
filename="/tmp/somefile"
if[$(stat-c%s$filename)-eq0];then
printf"'$filename'isempty. "
else
printf"$filenameisnotempty. ";
fi
stat -c %s filename 可以返迴文件大小。這里判空條件是文件大小為0,具體還要看你的判空條件。
folder=test
content=`ls$folder`
["$content"=""]&&echo"$folderempty"||echo"$folderNOTempty"
⑶ linux下有函數可以直接判斷一個目錄是否為空嗎 csdn
用man 3 printf 就可以看到頭文件。有時有些函數的查看需要不同的man庫,具體可以看一下 man man。
⑷ Linux中怎麼找出空文件夾
可以使用find命令。find是最常見和最強大的查找命令,你可以用它找到任何你想找的文件。
find的使用格式如下:$ find <指定目錄> <指定條件> <指定動作>
如果什麼參數也不加,find默認搜索當前目錄及其子目錄,並且不過濾任何結果(也就是返回所有文件),將它們全都顯示在屏幕上。
對於本問題來說,可以使用-type d約束只搜尋文件夾,使用-empty約束尋找空文件夾。
find -type d -empty
請參考《Linux就該這么學》基礎命令。
⑸ linux用C如何判斷一個目錄是否為空
下面的程序在solaris8、gcc編譯通過的,如果一個目錄是空的,輸出為2。
QUOTE: #include #include #include int main(int argc , char **argv){DIR *dirp;int num=0;dirp = opendir(argv[1]);
while (dirp) {
if ( readdir(dirp) != NULL)++num;elsebreak;}closedir(dirp);
printf("%d\n",num);
}shell中判斷目錄為空
⑹ linux 判斷一個目錄是不是為空的
我是用腳本實現的
如果同時也要檢查隱藏文件ls-l-A即可,num後面是引用執行符
read-p"輸入要檢查目錄的完整路徑"addr
num=`ls$addr|wc-l`%>/dev/null
if[$num=0]
thenecho"目錄為空"
elseecho"目錄不為空"
fi
⑺ shell判斷文件是否為空
test -e filename
返回0則存在,返回1則不存在。
或者
if [ -e $filename ]
空格很關鍵,注意哦。
判斷文件的參數如下,本人自己整理的。
-e 文件存在 -f file 是一個 regular 文件(不是目錄或者設備文件) -s 文件長度不為 0 -d 文件是個目錄 -b 文件是個塊設備(軟盤,cdrom 等等) -c 文件是個字元設備(鍵盤,modem,音效卡等等) -p 文件是個管道 -h 文件是個符號鏈接 -L 文件是個符號鏈接 -S 文件是個 socket -t 關聯到一個終端設備的文件描述符 這個選項一般都用來檢測是否在一個給定腳本中的 stdin[-t0]或[-t1]是一個終端 -r 文件具有讀許可權(對於用戶運行這個 test) -w 文件具有寫許可權(對於用戶運行這個 test) -x 文件具有執行許可權(對於用戶運行這個 test)
⑻ shell腳本如何判斷目錄下的多個文件夾是否為空
directoy=./
find
${directoy}
-type
d
|
xargs
-sh
|
grep
^0
|
awk
'{print
$2}'
先在指定目錄下查找
目錄文件,
然後用
-sh
計算目錄大小,
找出大小為0的目錄,然後列印出來即可
若是不希望循環查找下去,可以只查找本級目錄:
ls
-l
|
grep
^d
|
awk
'{print
$NF}'
|
xargs
-sh
|
grep
^0
|
awk
'{print
$2}'
還有個比較完善的解答:
directoy=./
ls
-l
${directoy}
|
grep
^d
|
awk
'{printf("%s/%s\n",dir,$NF)}'
dir=${directoy}
|
xargs
-sh
|
grep
^0
|
awk
'{print
$2}'