相关疑难解决方法(0)

在脚本中使用 $"dollarsign-prefixed string" 是什么意思?

我刚刚在初始化脚本中看到了这一点:

echo $"Stopping Apache"
Run Code Online (Sandbox Code Playgroud)

那个美元符号是干什么用的?

到目前为止我的研究:

我在 bash 手册中找到了这个:

引述

如果设置,$'string'并且在双引号括起来的扩展中$"string"执行${parameter}引用。默认情况下启用此选项。

...但我没有发现带$前缀和不带前缀的字符串之间有任何区别:

$ echo "I am in $PWD"
I am in /var/shared/home/southworth/qed
$ echo $"I am in $PWD"
I am in /var/shared/home/southworth/qed
$ echo $"I am in ${PWD}"
I am in /var/shared/home/southworth/qed
$ echo "I am in ${PWD}"
I am in /var/shared/home/southworth/qed
$ echo 'I am in ${PWD}'
I am in ${PWD}
$ echo $'I am in ${PWD}'
I am in ${PWD} …
Run Code Online (Sandbox Code Playgroud)

scripting bash shell-script quoting

103
推荐指数
2
解决办法
7万
查看次数

单行 heredocument - 在 Bash 中可能吗?

我希望cat在一行中运行一个heredocument,而不是 3 行的自然语法(开场白、内容和分隔符)。我这样做的需要主要是美观,因为重定向的内容旨在成为手册文本文件的一部分,我想在该特定文件中尽可能多地保存行)。

cat <<< TEST > ~/myRep/tiesto tiesto TEST(我通常会分成 3 部分)会导致错误:

tiesto: 没有这样的文件或目录

测试:没有这样的文件或目录。

甚至可以在 Bash 中执行一行 heredocuments 吗?

here-document here-string

3
推荐指数
1
解决办法
4400
查看次数