用于在用户定义的目录中搜索文件的Unix脚本

时间:2015-01-02 13:23:24

标签: shell unix

我需要制作一个unix脚本来检查用户定义目录中的文件,即脚本将采用文件名(例如abc.txt),并且还将输入用户的目录(例如/ home / user / abc) )&该脚本将检查该目录中是否有该特定文件(abc.txt)。

我尝试过使用: -

echo "Enter your directory"
read directory
echo "Enter file name"
read name
if [ -s $directory/$name ]
 then 
echo 0
else
echo "File not available"

3 个答案:

答案 0 :(得分:0)

我会看看unix堆栈交换站点,这应该对你更有帮助:

https://unix.stackexchange.com/questions/63387/single-command-to-check-if-file-exists-and-print-custom-message-to-stdout

这可能会有所帮助:

system("[ ! -e file ]; echo $?")

答案 1 :(得分:0)

尝试类似:

find $directory -name "$name" | egrep '.*'
if [[ $? -eq 0 ]]
then
    echo 0
else 
    echo "File not available"
fi

或者你可以使用

if [ -e $directory/$name ]

检查文件是否存在。

答案 2 :(得分:0)

您的代码几乎是正确的,这是一个固定/增强版本:

printf "Enter your directory : "
read directory
printf "Enter file name      : "
read name
if [ -f "$directory/$name" ] ; then 
    echo "File found"
else
    echo "File not found"
fi