用于在子目录中搜索文件的unix脚本

用于在子目录中搜索文件的unix脚本,unix,Unix,此脚本检查中是否存在,以及修改日期是否小于1天。我一直在尝试让它遍历整个目录,以查找我尝试过测试并找到的文件,但对unix脚本编写不是很熟悉 请告知正确的语法或命令是什么,如果我要查找的文件在上载目录中,脚本工作正常 find /path/to/upload/dir -name $filename -mtime +1 -print 问题 我想在所有子目录中搜索上载目录下的文件?:o) 我使用mac终端作为unix环境 filename=help.csv filedir="local

此脚本检查中是否存在,以及修改日期是否小于1天。我一直在尝试让它遍历整个目录,以查找我尝试过测试并找到的文件,但对unix脚本编写不是很熟悉

请告知正确的语法或命令是什么,如果我要查找的文件在上载目录中,脚本工作正常

find /path/to/upload/dir -name $filename -mtime +1 -print
问题 我想在所有子目录中搜索上载目录下的文件?:o) 我使用mac终端作为unix环境

filename=help.csv

filedir="localhost/upload/"

cd $filedir

# if [ find . -name "$filename" ]; then
if [ -e "$filename" ]; then               # what should I add here to find the file in   any subdirectory of upload

  echo "File Exists"
  filestr=`find . -name $filename -mtime +1 -print`
  if [ "$filestr" = "" ]; then
    echo "File is not older than 1 day"
  else
    echo "File is older than 1 day"
  fi
else

  echo "File does not exist"
fi

exit 0

您应该能够在上载目录中启动
查找

find /path/to/upload/dir -name $filename -mtime +1 -print

您现在调用的
仅表示“开始查找”。这是当前目录。

如果[find/localhost/upload/-name“$filename”-mtime+1-print];然而,我只是得到了一个错误“太多的论点”有什么想法吗?我的语法是否正确。
find
命令是否从命令行工作?我怀疑你只是错误地构造了
find
。我相信Andy建议你用他编写的
find
命令替换整个脚本。如果
s,则无
,或
[]
s。。。只需手动运行
find
命令。不,该命令在命令行中不起作用。这个命令很好用,find-输入find/Applications/XAMPP/xamppfiles/htdocs/data\u vis/upload/-name Audit\u Summary.csv-mtime+1-打印时不返回任何内容
find /path/to/upload/dir -name $filename -mtime +1 -print