I have the following function in my .zshrc which, in theory, allows me to write a commit message without needing quotation marks.
cm(){
git commit -m "$@"
}
When I run it (cm foo bar), I get the following error:
zsh: unknown file attribute
Does $@ mean the same thing in zsh as it does in bash?
Accoring to this article, * and @ both contain an array of the positional parameters.
The parameters
*,@andargvare arrays containing all the positional parameters; thus$argv[n], etc., is equivalent to simply$n.
And...
A subscript of the form
[*]or[@]evaluates to all elements of an array; there is no difference between the two except when they appear within double quotes."$foo[*]"evaluates to"$foo[1] $foo[2] ...", whereas"$foo[@]"evaluates to"$foo[1]" "$foo[2]" ....
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With