#!/bin/bash
echo "hello world"
$a='~'
$b='$a/nlu'
echo $b
Run Code Online (Sandbox Code Playgroud)
我有
./test.sh: line 3: =~: command not found
./test.sh: line 4: =$a/nlu: No such file or directory
Run Code Online (Sandbox Code Playgroud)
作为错误有什么问题?
改用这个:
#!/bin/bash
echo "hello world"
a='~'
b="$a/nlu"
echo $b
Run Code Online (Sandbox Code Playgroud)
不要$
用于任务。
b='$a/nlu'
-- 表达式$a
不要用单引号扩展,为此使用双引号。
正如@steeldirver 所指出的那样,由于分配没有正确完成,然后尝试作为命令执行,./test.sh: line 4: =$a/nlu: No such file or directory
因此$b
扩展为空的结果。适用于完全相同。bash
=$a/nlu
./test.sh: line 3: =~: command not found
对于将来的错误,请使用shellcheck
同名软件包或其在线版本。
归档时间: |
|
查看次数: |
545 次 |
最近记录: |