在 Shell 脚本中声明用户定义的变量 (csh shell)

发布于 2024-09-25 09:51:10 字数 278 浏览 3 评论 0原文

我正在尝试学习 shell 脚本并尝试在脚本中创建用户定义的变量,first

howdy="Hello $USER !"
echo $howdy

但是,当我执行脚本 (./first) 时,我得到了这个:

howdy=Hello aaron!: Command not found.
howdy: Undefined variable.

我做错了什么?

I am trying to learn shell scripting and trying to create a user defined variable within the script, first:

howdy="Hello $USER !"
echo $howdy

However, when I execute the script (./first) I get this:

howdy=Hello aaron!: Command not found.
howdy: Undefined variable.

What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

凡尘雨 2024-10-02 09:51:10

您的代码中有两个错误:

  1. 您使用 sh 语法而不是 csh 语法来设置变量,
  2. 您没有转义“!”角色(历史替换)

试试这个:

#!/bin/csh

set howdy="Hello $USER \!"
echo $howdy

You have two errors in you code:

  1. you are using sh syntax instead of csh one to set the variable
  2. you are not escaping the "!" character (history substitution)

Try this:

#!/bin/csh

set howdy="Hello $USER \!"
echo $howdy
一身软味 2024-10-02 09:51:10

csh 希望您设置 变量。尝试

set howdy="Hello $USER"
echo $howdy

csh expects that you set variables. Try

set howdy="Hello $USER"
echo $howdy
自找没趣 2024-10-02 09:51:10

您正在做的事情

howdy=''Hello $USER !''

您需要将字符串括在双引号中,如下所示:

howdy="Hello $USER !"

您似乎正在使用两个单引号代替双引号。

You are doing

howdy=''Hello $USER !''

You need to enclose the string in double quotes as:

howdy="Hello $USER !"

You seem to be using two single quotes in place of a double quote.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文