bash 函数作为 .bashrc 中的别名的正确语法
Correct syntax for bash function as alias in .bashrc
我刚刚在 bash 脚本 tutorial 中阅读了以下说明:
Let's try one. Open .bashrc with your text editor again and replace
the alias for "today" with the following:
today() {
echo -n "Today's date is: "
date +"%A, %B %-d, %Y"
}
我应该替换的行是 'date +"%A, %B %-d, %Y"'
完整行是:
alias today='date +"%A, %B %-d, %Y"'
但是,尝试了以下方法:
alias today='today() {
echo -n "Today's date is: "
date +"%A, %B %-d, %Y"
}'
第 2 行有和没有撇号(在 "Today's" 中),和 w/wo 封闭的单引号,作为一个衬里,并使用 function
关键字结合列出的所有其他选项。我还尝试在 alias 语句上方定义函数,然后简单地使用 'today()'(w/wo quotes) 作为别名值,作为一个长镜头。以上的 None 有效。
使用此函数作为别名的正确语法是什么?
您可以单独拥有它:
_today() { echo -n "Today's date is: "; date +"%A, %B %-d, %Y"; }
alias today='_today'
该代码段并未告诉您对 alias
执行任何操作,而是将其删除。
它试图让您用函数替换别名,因为函数通常比别名更有用。
我刚刚在 bash 脚本 tutorial 中阅读了以下说明:
Let's try one. Open .bashrc with your text editor again and replace the alias for "today" with the following:
today() { echo -n "Today's date is: " date +"%A, %B %-d, %Y" }
我应该替换的行是 'date +"%A, %B %-d, %Y"'
完整行是:
alias today='date +"%A, %B %-d, %Y"'
但是,尝试了以下方法:
alias today='today() {
echo -n "Today's date is: "
date +"%A, %B %-d, %Y"
}'
第 2 行有和没有撇号(在 "Today's" 中),和 w/wo 封闭的单引号,作为一个衬里,并使用 function
关键字结合列出的所有其他选项。我还尝试在 alias 语句上方定义函数,然后简单地使用 'today()'(w/wo quotes) 作为别名值,作为一个长镜头。以上的 None 有效。
使用此函数作为别名的正确语法是什么?
您可以单独拥有它:
_today() { echo -n "Today's date is: "; date +"%A, %B %-d, %Y"; }
alias today='_today'
该代码段并未告诉您对 alias
执行任何操作,而是将其删除。
它试图让您用函数替换别名,因为函数通常比别名更有用。