gpt4 book ai didi

linux - 用于从 Postgresql 中获取行的 Bash 脚本

转载 作者:太空宇宙 更新时间:2023-11-04 13:02:54 27 4
gpt4 key购买 nike

我有一个返回 JSON 字符串表的 Postgresql 函数。

我想在 Linux 平台下获取这些行并为每个字符串运行 CURL 程序,如下所示:

curl http://XXX.XX.XX.XX:XXXX/update/json -H 'Content-type:application/json' -d ['||solr_interface.dict_cursor_okpd_json()||']'

您有任何使用 say bash 脚本执行此操作的示例吗?

谢谢指教。

最佳答案

我找到了解决方案。也许对某人有用

#!/bin/bash

if [ $# != 2 ]; then
echo "Please select postgres procedure for data retrieving as first parameter"
echo "and Solr index name (dictionary or company) as second parameter"
exit 1;
fi

PSQL=/usr/bin/psql

DB_USER="xxxxxxxx"
DB_PASSWORD="xxxxxxxx"
DB_HOST="xxx.xxx.xxx.xxx"
DB_PORT="xxxx"
DB_NAME="portal_sources"

export PGPASSWORD=$DB_PASSWORD

$PSQL \
-X \
-h $DB_HOST \
-p $DB_PORT $DB_NAME \
-c "select 'curl http://xxx.xxx.xxx.xxx:xxxx/solr/$2/update/json -H ''Content-type:application/json'' -d ''['||$1||']'''" \
--single-transaction \
--set AUTOCOMMIT=off \
--set ON_ERROR_STOP=on \
--no-align \
-t \
--field-separator ' ' \
--quiet \
| while read command ; do
#echo "$command"
eval $command
done

关于linux - 用于从 Postgresql 中获取行的 Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33471448/

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