我尝试运行如下代码,但出现错误:第 4,5,6 行未找到命令。试图找到类似的问题答案,但我不知道如何确定正在运行此脚本的集群操作系统的版本。我不确定第一行或第 4、5、6 行是否有任何问题。有人可以帮忙吗?
#!/bin/bash
for i in 02 03 04 05 06 07 09 10 11 12 13 14 15 16 17 20 21 22 23 24 25; do
x=grep $i sphnum.txt |cut -c5-6
y=grep $i sphnum.txt |cut -c8-9
z=echo $i'.ala.'$x'.sph '$i'.ala.'$y'.sph'
echo $z
done
最佳答案
正如其他人所说,您需要捕获命令的输出。
z=echo foo
-bash: foo: 未找到命令
与
不同z=$(echo foo)
在第一个中,它相当于
z= echo
富
这是无效的,因为它认为 foo
是一个命令。
z=$(echo foo)
但是意味着执行 echo foo
并将输出捕获到 z
中。
您的所有命令都无法执行此操作。
关于linux - bash脚本: command not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38601997/