linux - 如何创建不带参数 $1 和 $2 的字符串=$*

标签 linux bash unix arguments

我有一个接受多个参数的脚本。

除了字符串中的 $1$2 之外,我需要所有内容。

我试过这个:

message="$*"
words= $(grep -v "$2"|"$3" $message)

但它不起作用,它给了我错误:

./backup: line 26: First: command not found

最佳答案

使用 shift 2 移动参数(它删除前 n 个参数)。 如果以后需要 "$1""$2",请先将它们保存在变量中。

请注意,在 shell 中,对变量的赋值不能在 = 的两边有空格。

First=$1
Second=$2
shift 2
Message=$@

关于linux - 如何创建不带参数 $1 和 $2 的字符串=$*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58119848/

相关文章:

linux - 从最近 3 分钟的日志文件中获取/提取数据?

linux - 在 Bash 中使用 "$RANDOM"生成随机字符串

linux - 在执行前打印每个命令的 Powershell 等效于 `set -x` 是什么?

php - Shell_exec 使用相同的输入给出不同的输出

ruby - 如何使用 ruby​​ 和 unix 服务器截取网页的屏幕截图?

unix - OpenBSD 中的进程信息

linux - Bash:如何在跳过 key=value 的特定实例时始终如一地替换等号后面的内容?

linux - 如何使用 Nginx 服务器在 Ubuntu 服务器上部署 dotnet 核心应用程序?

python - 使用 Python 处理许多文件

c - 您如何使用 Xcode 在 OS X 上以普通用户身份调试 libpcap 代码?