Bash 如何打开并行终端并调用相同的shell脚本
我想打开X gnome终端,在这个终端中打开并行shell脚本,这对所有终端都是一样的。 我创建了一个shell脚本:Bash 如何打开并行终端并调用相同的shell脚本,bash,shell,awk,terminal,gnome,Bash,Shell,Awk,Terminal,Gnome,我想打开X gnome终端,在这个终端中打开并行shell脚本,这对所有终端都是一样的。 我创建了一个shell脚本: #!/bin/bash for ou in 11 33 34 35 36 37 39 41 42 do cd /home/filip/Desktop/Analyza\ NIFTY\ and\ CNVs/NIFTY\ pooling008/raw\ data/binar/$ou gnome-terminal sh vypis_s_prazdnymi_ready
#!/bin/bash
for ou in 11 33 34 35 36 37 39 41 42
do
cd /home/filip/Desktop/Analyza\ NIFTY\ and\ CNVs/NIFTY\ pooling008/raw\ data/binar/$ou
gnome-terminal
sh vypis_s_prazdnymi_ready-rozdeleni_do_binu.sh > "$ou"_pool008.tsv
done
我正在调用另一个名为vypis_s_的shell脚本,但在这个脚本中有awk和R代码,我认为这没有问题,但有导出功能,之后我会收到错误日志,如:
vypis_s_prazdnymi_ready-rozdeleni_do_binu.sh:12:导出:1:错误的变量名
我只想这样,打开终端(终端数量取决于循环),并为每个终端转到特定的文件夹,其中是文档和相同的shell脚本。我想同时为所有终端调用它。您的问题可能在
vypis\u s\u prazdnymi\u ready-rozdeleni\u do\u binu.sh
脚本中。。。您可以避免用引号插入文件名,并用${ou}\u pool008.tsv
替换“$ou”\u pool008.tsv
,根据错误消息,您的脚本可能试图执行导出1=…
,这是不允许的,环境变量应该以字母开头。我通过调用函数重新解释了这一点。。。不是使用sh而是bash…但是在那之后我发现了另一个问题,它不是并行的。所以我必须使用命令并行:-(事实上,我对真正的并行需求有疑问,所以我没有谈论它。这里还有什么需要回答的吗?或者这个问题是否可以标记为关闭?