我要编写一个下标(称为 echomyvar),显示运行脚本的进程的 PID 以及名为 myvar 的变量的值。正文中有:
$ cat echomyvar
echo The PID of this process is $$
echo The value of myvar is: $myvar
$ echo $$
2651
$ ./echomyvar
The PID of this process is 4392
The value of myvar is:
我能够创建文件 echomyvar.到目前为止我已经
#!/bin/bash
echo 'The PID of this process is $$'
echo 'The Value of myar is: $myvar'
我不知道这是否正确。我应该重现文本中的内容。
答案1
你引用的文字,
echo The PID of this process is $$
echo The value of myvar is: $myvar
$$
是输出(shell 的进程 ID) 和的值的文字脚本$myvar
。
它将产生输出
The PID of this process is 4392
The value of myvar is:
(如果 shell 的 PID 恰好是 4392)。
这不是一个练习,而是一个例子,除非你应该制作这个脚本作为输出,但我对此表示怀疑。
该echo
实用程序将其每个参数输出到标准输出(在本例中为终端)。人们通常会这样使用它
echo 'some string'
或者
echo "some string with a $variable"
在上一个示例中使用单引号会阻止 shell 扩展$variable
到其值。使用不引号只是意味着将多个参数传递给echo
.
为了让它成为一个好的例如,它应该使用printf
(因为它输出可变数据):
printf 'The PID of this process is %d\n' "$$"
printf 'The value of myvar is: %s\n' "$myvar"
有关的: