gpt4 book ai didi

shell - 如何从shell获取确切的命令行字符串?

转载 作者:行者123 更新时间:2023-12-04 22:46:28 27 4
gpt4 key购买 nike

我知道 $* , $@ , "$@"甚至 ${1+"@"}以及它们的含义。

我需要访问 准确 来自 shell 脚本的命令行参数字符串。请注意示例中的引号。像“$@”这样的东西会保存参数但会删除引号,我不知道如何从中恢复。

例子:

./my-shell.sh "1 2" 3



我需要检索 准确 未经任何处理的参数字符串:

"1 2" 3



知道如何实现这一目标吗?

最佳答案

bash ,您可以从 shell 历史记录中获取:

set -o history
shopt -s expand_aliases

function myhack {
line=$(history 1)
line=${line#*[0-9] }
echo "You wrote: $line"
}
alias myhack='myhack #'

如您所描述的那样工作:
$ myhack --args="stuff" * {1..10}    $PATH
You wrote: myhack --args="stuff" * {1..10} $PATH

另外,这是一个方便的图表:

关于shell - 如何从shell获取确切的命令行字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23916410/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com