2011-04-21 104 views
1

你好我运行javac命令(-STF是一个文件)巴什 - 参数不工作

javac @$lstf 

出于某种原因,我得到一个错误说javac: file not found: path/to/dir/*.java。每当我在终端javac中手动输入参数args。

下面是代码:

mkdir "$out" 

cd src 
scan 

"$cc" $cflags -d "../$out" @${lstf} 
rm -rf $lstf 
cd ../ 

扫描生成文件$-STF所有路径的功能 - 它工作正常

+0

你能告诉脚本或命令导致这一休息吗? – 2011-04-21 03:53:11

+0

“@”符号的意义是什么? – 2011-04-21 03:56:38

+0

也许如果你这样做:javac @“$ lstf” – PEdroArthur 2011-04-21 03:59:32

回答

1

你需要说javac @foo,并lstf = foo

每当你在一个情况下变量名是难以破译,你可以使用${var}语法,而不只是$var

javac @${lstf} 
+0

这不起作用,它仍然显示相同的错误 – LanguagesNamedAfterCofee 2011-04-21 10:38:21

+0

您能向我们展示脚本并更好地解释您正在尝试做什么吗?我实际上并不确定你为什么在那里拥有'@'。你正在尝试使用“$ @”吗?请编辑您的问题,以明确您正在尝试执行的操作。这样我们可以帮助你而不是简单地猜测。 – 2011-04-21 14:52:50

0

如果你的文件路径店-STF变量,只是叫它

javac "$lstf" 
+0

这是错误的,因为@anyfile意味着javac必须读取存储在任何文件中的一组文件名,但不能编译任何文件本身。 – PEdroArthur 2011-04-21 04:16:08