linux判斷是否為目錄
1. linux中如何判斷是普通文件還是目錄文件
使用ls命令即可區分文件夾和文件。示例:ls -la
說明:
-l 列出文件的詳細信息。專
-a 列出目錄下的屬所有文件,包括以 . 開頭的隱含文件。
要判斷是文件還是文件夾,看第一列的內容即可,第一列的第一個字母指明了文件類型:-」表示普通文件,「d」代表目錄,「l」代表連接文件,「b」代表設備文件。
2. linux 判斷是文件還是目錄的命令
使用抄if...else...進行判斷,比如待判襲斷的文件或目錄名是xxx,則可以這樣進行判斷:
if [ -d xxx ];then
echo "xxx is a dir"
elif [ -f xxx ];then
echo "xxx is a file"
fi
3. 如何判斷linux是文件還是目錄
如果是腳本可以通過ls -l命令來判斷,因為目錄第一個字母是d。
如果是編程可以參考以下內容。
man stat;
stat.h中有判斷是什麼文件的宏:
S _ I S R E G ( ) 普通文件
S _ I S D I R ( ) 目錄文件
S _ I S C H R ( ) 字元特殊文件
S _ I S B L K ( ) 塊特殊文件
S _ I S F I F O ( ) 管道或F I F O
S _ I S L N K ( ) 符號連接( P O S I X . 1或S V R 4無此類型)
S _ I S S O C K ( ) 套接字(P O S I X . 1或S V R 4無此類型)
具體可以參照APUE文件目錄相關章節。
下面給出一個具體的例子:
#include <stdio.h>
#include <sys/stat.h>
int main(int argc, char* argv[])
{
struct stat buf;
if(argc < 2)
{
printf("Need Parameter");
return -1;
}
if(lstat(argv[1], &buf) < 0)
{
printf("lstat error for %s\r\n", argv[1]);
return;
}
if(S_ISDIR(buf.st_mode))
printf("%s Is DIR\r\n", argv[1]);
else if(S_ISREG(buf.st_mode))
printf("%s Is FILE\r\n", argv[1]);
return 0;
}
4. linux判斷路徑下所有內容是否為文件夾
PATH="完整路徑即可"
function IsFile(){
FULLPATH="$1"
#遍歷目錄
for fName in $(/bin/ls $FULLPATH)
do
fileType=`/usr/bin/file "$PATH""$fName" | /bin/awk '{FS=":"} {printf $2}'`
# 文件夾的類型為:directory
if [ "directory" == $fileType ]; then
printf '%s is %s!! \n' $fName $fileType
else
printf '%s is not file,is %s ######## \n' $fName $fileType
fi
done
}
IsFile $PATH
註:command not found如果腳本出現這種錯誤提示,寫命令完整路徑即可,用whereis查證該命令的完整路徑,
5. linux 怎麼判斷路徑表示的是目錄還是文件
ls -al
然後每個文件有一個標識符
開頭是d的是目錄,-是文件,l是軟連接。
6. linux如何判斷是文件還是目錄
可以使用ll命令判斷,命令如下:
ll
得到的結果,如果首字母是d則為文件夾,如果為-則為文件。
效果如下:
7. 在Linux下用c語言 如何判斷文件是文件還是目錄
#include <stdio.h>
#include <sys/stat.h>
#include <unistd.h>
int main(int argc,char *argv[])
{
struct stat st;
printf("%s",argv[1]);
stat(argv[1],&st);
if (S_ISDIR(st.st_mode))
printf("is a dir\n");
else
printf("is not a dir\n");
return 0;
}
虛擬機上測過了.
是驗證輸入的第一個參數是不是目錄.
8. Shell腳本判斷是文件還是目錄怎麼寫
#!/bin/bash
if[-d$1]
then
echo"$1isadirectory."
exit
elif[-f$1]
then
echo-n"$1isafile,"
if[-L$1]
then
echo"anditisalsoasymboliclink."
A=`ls-L$1`
if[-e$A]
then
echo"Symboliclinkexist."
else
echo"Symboliclinknotexist."
fi
exit
else
echo"butitisnotasymboliclink."
exit
fi
fi
9. linux 怎麼判斷目錄是否存在
用samba這個軟體可以
service smb start 啟動samba服務
/etc/samba samba配置文件存放目錄
/etc/samba/smb.conf samba的主配置文件
samba服務的配置文件分兩部內分
Global Settings 全局設置
Share Definitions 共享容設置
例如:
[share1]
comment(對此的描述可有可無) = share mp3
path = /etc 共享的文件目錄
public = yes 任何人都可以使用這個資源
(public = no 時 可以添加指定的用戶
valid users = tom1 tom2 tom3)
writable = yes 是否允許訪問者寫入
10. Linux下判斷是否是一個目錄還是一個文件的方法
查文件: # find 你要查看的目錄 -type f | wc -l 查目錄: # find 你要查看的目錄 -type d | wc -l