2013-02-23 100 views
0

我试图从数据库中查找文件。我从php文件中获取数据就好了。这是我遇到的问题只是这一行:在find中使用变量

directory=`find ./ -type f -name "*$thismodelnormal*" -exec ls -la {} \;` 

$thismodelnormal只是一个字符串,但它基于数据库中的数据是动态的。任何人都可以启发我如何完成这项工作?我已经完成了很多研究并找不到解决方案..但是肯定有人曾经这样做过。

+0

尝试在'find'之前放置一个'echo',以查看最终运行的命令。将它粘贴到你的终端(从PHP的工作目录开始)会给你你的期望? – phs 2013-02-23 06:29:36

+0

将'set -x'添加到脚本的顶部,以查看执行时的命令。 – Barmar 2013-02-23 06:33:16

+0

@Barmar没办法!棒极了!快速和简单的修复。作为答案添加 – 2013-02-23 06:42:47

回答

2

在我的脚本顶部添加set -x可以让我查看实际运行的命令。在这种情况下,我的命令需要为

directory=`find ./ -type f -name "*"$thismodelnormal"*" -exec ls -la {} \;` 

注意两组双引号。一个用于查找本身,另一个用于提取变量。