0

我有一个字符串,其中包含我想在 bash 脚本中执行的命令。我怎样才能做到这一点?抱歉这么基本的问题,但我是 bash 的新手。这是我的代码:

echo "What is the path to save the result files?"
read out_path

end_cm1=$"fastqc -o "$out_path$" --noextract -fastq "$files1

我想执行 end_cm1 变量中的指令。

4

2 回答 2

3

首先,您根本不必将该命令放在字符串中:您可以这样做:

fastqc -o "$out_path" --noextract -fastq $files1

(如果路径中有空格,我建议$out_path在此处加上引号。我没有加上$files1引号,因为您的变量是复数,所以我假设有多个;您也应该注意这些文件名中的空格。 )

其次,您提出的问题的答案是eval

eval $end_cm1
于 2012-06-18T08:06:48.073 回答
0

您的字符串中只有一个轻微的语法问题:

end_cm1="fastqc -o $out_path --noextract -fastq $files1"
$enc_cm1

话虽如此,@ams 是正确的,首先不需要将其分配给字符串,以及不引用所涉及的风险$files1

于 2012-06-18T12:26:07.767 回答