Linux中判断1.这个档案是否存在,若不存在则给予一个 Filename does not exist】的讯息,并中断程序; 2.若这个档案存在,则判断他是个档案或目录,结果输出Filename is regular file或 [Filename is directoryJ 3.判断一下,执行者的身份对这个档案或目录所拥有的权限,并输出权限数据!
时间: 2024-03-21 15:38:18 浏览: 110
可以使用以下 Shell 脚本来实现:
```shell
#!/bin/bash
# 判断文件是否存在
if [ ! -e "$1" ]; then
echo "Filename does not exist"
exit 1
fi
# 判断是文件还是目录
if [ -f "$1" ]; then
echo "Filename is regular file"
elif [ -d "$1" ]; then
echo "Filename is directory"
else
echo "Unknown file type"
fi
# 输出文件权限
echo "File permissions for $1:"
echo "Owner: $(stat -c '%A %U' "$1")"
echo "Group: $(stat -c '%G' "$1")"
echo "Others: $(stat -c '%a' "$1")"
```
脚本中 `$1` 表示第一个参数,即要判断的文件名或路径。首先使用 `-e` 参数判断文件是否存在,如果不存在则输出提示信息并中断程序。接着使用 `-f` 参数判断是文件还是目录,分别输出不同的提示信息。最后使用 `stat` 命令输出文件的权限信息。运行脚本时需要传入要判断的文件名或路径作为参数,例如:
```shell
./check_file.sh /path/to/file
```
相关问题
linux判断档案是否存在,若不存在则给予一个 Filename does not exist】的讯息,并中断程序;
在Linux中,可以使用以下语句判断文件是否存在:
```
if [ ! -f /path/to/file ]; then
echo "Filename does not exist"
exit 1
fi
```
其中,`-f` 参数用于判断文件是否存在。如果文件不存在,则输出提示信息并使用 `exit` 命令中断程序。请将 `/path/to/file` 替换为你要判断的文件路径。
Linux系统中执行,这个档案是否存在,,若不存在则给予一个null的讯息,并中断程序
可以使用以下的命令来判断文件是否存在:
```
if [ -f "/path/to/file" ]; then
echo "File exists."
else
echo "File does not exist."
exit 1
fi
```
其中,`/path/to/file`表示要检查的文件路径和名称。如果文件存在,则输出 "File exists.";如果文件不存在,则输出 "File does not exist." 并使用 `exit` 命令中断程序。
阅读全文