linux中如何判断是普通文件还是目录文件

linux中如何判断是普通文件还是目录文件,第1张

使用ls命令即可区分文件夹和文件。示例:ls -la 说明:-l 列出文件的详细信息。-a 列出目录下的所有文件,包括以 . 开头的隐含文件。要判断是文件还是文件夹,看第一列的内容即可,第一列的第一个字母指明了文件类型:-”表示普通文件,“d”代表目录,“l”代表连接文件,“b”代表设备文件。

//是目录不是文件夹

#! /bin/bash

# filename:FileType.sh

read -p "Please input the filename :" filename

fpath=$filename

if [ -d $fpath ]

then

echo "$fpath is a direstory."

elif [ -e $fpath ]

then

echo "$fpath is a file."

else

echo "$fpath is NOT a file or direstory."

fi

#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

}

虚拟机上测过了.

是验证输入的第一个参数是不是目录.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8985902.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存