如何创建一个脚本来检查提供的文件是否存在,如果不存在,则创建一条错误消息。我有以下代码,但它不起作用:
#!/bin/bash
echo "enter file name:"
read source
file= $source
if [ -f "$file" ] && find "$file" | grep -q .
then
echo "the file exists."
else
echo "the file does not exist."
fi
答案1
我不确定你的 && find 语句在做什么...尝试这样:
#!/bin/bash
read -p "enter file name: " source
file=$source
if [[ -f "$file" ]]; then
echo "the file exists."
else
echo "the file does not exist."
fi
编辑
另外我刚刚注意到你有一个空间是file= $source
行不通的。它需要是file=$source
编辑2
我猜 find 部分应该搜索该文件,以防它不在当前目录中?在这种情况下,你可以这样做(这是一个草率的脚本,我想不出使用它的好理由):
#!/bin/bash
read -p "enter file name: " source
file=$(find / -type f -name "$source" 2> /dev/null | head -n1)
if [[ -f "$file" ]]; then
echo "the file exists."
else
echo "the file does not exist."
fi