gpt4 book ai didi

linux - 将 shell 脚本变量设置为命令的输出

转载 作者:太空狗 更新时间:2023-10-29 12:42:14 25 4
gpt4 key购买 nike

我试图将 cd 放入脚本中设置的任何变量的 md5 散列,但我没有得到正确的 md5 值,我认为这与我声明变量的方式有关。感谢您的帮助!

#!/bin/bash
var1=$1
md5=$(-n $var1 | md5sum)
cd /var/www/html/$md5

我希望它能将我带到由 md5 散列给出的目录:

$ ./myscript hello
(no output)
$ pwd
/var/www/html/5d41402abc4b2a76b9719d911017c592

相反,它给了我错误并尝试 cd 到错误的路径:

$ ./myscript hello
./myscript: line 3: -n: command not found
./myscript: line 4: cd: /var/www/html/d41d8cd98f00b204e9800998ecf8427e: No such file or directory
$ pwd
/home/me

无论我输入哪个值,它错误地尝试 cd 到的 md5sum 也是相同的。

最佳答案

这对于遇到此问题的其他人来说是一种解决方案

#!/bin/bash
md5=$*
hash="$(echo -n "$md5" | md5sum )"
cd /var/www/html/$hash

关于linux - 将 shell 脚本变量设置为命令的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38641757/

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