#!/bin/bash
# 获取用户输入的文件路径
read -p "请输入文件路径: " filepath
# 检查文件是否存在
if [ -e "$filepath" ]; then
# 检查文件类型
if [ -d "$filepath" ]; then
# 如果是目录,则列出目录下的内容
echo "这是一个目录,目录内容如下:"
ls "$filepath"
elif [ -f "$filepath" ]; then
# 如果是普通文件,则显示文件内容
echo "这是一个普通文件,文件内容如下:"
cat "$filepath"
else
echo "这是一个特殊文件或其他类型的文件。"
fi
else
echo "文件不存在,请检查文件路径是否正确。"
fi
-
-e FILE
:检查文件是否存在。如果文件存在,返回true
,否则返回false
。例如:if [ -e "$filepath" ]; then
-
-d FILE
:检查文件是否为目录。如果文件是一个目录,返回true
,否则返回false
。例如:if [ -d "$filepath" ]; then
-
-f FILE
:检查文件是否为普通文件。如果文件是一个普通文件,返回true
,否则返回false
。例如:if [ -f "$filepath" ]; then
除了上述条件表达式之外,还有一些常用的文件测试条件表达式,如下:
-r FILE
:检查文件是否可读。-w FILE
:检查文件是否可写。-x FILE
:检查文件是否可执行。-s FILE
:检查文件是否非空(大小大于0)。-L FILE
:检查文件是否为符号链接。