动态构建curl capath的字符串路径

时间:2016-07-06 09:12:38

标签: bash curl ssl-certificate expand

Curl可以选择添加capath作为其参数之一。 此参数可以包含以下格式的一个或多个路径:

curl --capath /certs/path1:/certs/path2:/certs/path3 https://domain.com

是否可以通过添加根目录(例如/ certs /?)来使用curl capath arg和子文件夹? 如果不是我想构建自动扩展到此的字符串 格式:/ certs / path1:/ certs / path2:/ certs / path3

当我回复此命令时:

echo /certs/*

/certs/path1 /certs/path2 /certs/path3

必需的输出:

/certs/path1:/certs/path2:/certs/path3

我们的想法是拥有一些自动扩展方法,无需使用sed awk或外部工具即可实现。

类似的东西:

curl --capath /certs/*{:} https://domain.com

将自动生成结果:     curl --capath / certs / path1:/ certs / path2 /:/ certs / path3 https://domain.com

1 个答案:

答案 0 :(得分:0)

不幸的是,如果没有externl程序,我认为没有办法做到这一点。 好吧,你可以做到

for s in /certs/*
do
  path+="$s:"
done

但我不认为你在寻找这个。 关键是你正在使用通配符'*',它被shell解释为一个字符串列表,用空格分隔。

否则只需输入一个变量

var=`/certs/* | tr ' ' ':'`

希望这会回答。如果有人能找到真正的解决方案,那么我也想知道它=)