[root@localhost /]# eval "$(cat /home/docker/redis/script.lua)" 0 cat: /home/docker/redis/script.lua: No such file or directory -bash: 0: command not found
时间: 2023-08-02 07:11:37 浏览: 280
这个错误提示表明 Redis 在执行脚本时遇到了问题。
首先,`cat: /home/docker/redis/script.lua: No such file or directory` 表示 Redis 找不到 `/home/docker/redis/script.lua` 这个文件。你需要确认这个文件是否存在,路径是否正确。
其次, `-bash: 0: command not found` 表示 Redis 执行 `0` 这个命令时出现了错误。这是因为在 Redis CLI 中,`eval` 命令的最后一个参数是表示键的参数(KEYS),你需要提供这个参数,即使你的 Lua 脚本没有使用这个参数。
你可以尝试以下命令:
```
redis-cli eval "$(cat /home/docker/redis/script.lua)" 0
```
其中 `0` 表示没有键需要传递给 Lua 脚本。如果你的 Lua 脚本需要使用键,你需要将这个参数替换成对应的键名。
相关问题
[root@localhost redis]# eval "$(cat /home/docker/redis/test.lua)" 0 -bash: 0: command not found
这个错误提示表明 Redis 在执行脚本时遇到了问题。
首先,`cat: /home/docker/redis/test.lua: No such file or directory` 表示 Redis 找不到 `/home/docker/redis/test.lua` 这个文件。你需要确认这个文件是否存在,路径是否正确。
其次, `-bash: 0: command not found` 表示 Redis 执行 `0` 这个命令时出现了错误。这是因为在 Redis CLI 中,`eval` 命令的最后一个参数是表示键的参数(KEYS),你需要提供这个参数,即使你的 Lua 脚本没有使用这个参数。
你可以尝试以下命令:
```
redis-cli eval "$(cat /home/docker/redis/test.lua)" 0
```
其中 `0` 表示没有键需要传递给 Lua 脚本。如果你的 Lua 脚本需要使用键,你需要将这个参数替换成对应的键名。
127.0.0.1:6379> --eval /home/user/scripts/script.lua (error) ERR unknown command `--eval`, with args beginning with: `/home/user/scripts/script.lua`,
这个错误提示表明 Redis 不认识 `--eval` 这个命令,导致执行脚本失败。正常情况下,`--eval` 是一个可以在命令行中使用的参数,用于指定 Redis 执行 Lua 脚本的路径。但是在 Redis CLI 中,`--eval` 不是一个合法的命令。
你需要将 `--eval` 参数和脚本路径一起传递给 Redis CLI,例如:
```
redis-cli eval "$(cat /home/user/scripts/script.lua)" 0
```
这个命令将会执行 `/home/user/scripts/script.lua` 这个 Lua 脚本。
阅读全文