如何检查 postgresql 转储文件的类型

问题描述 投票:0回答:2

假设给你一个 postgresql 转储文件,不知道它是脚本文件还是归档文件,你将如何检查文件的类型?

我想知道这一点,因为这与恢复转储文件时使用什么命令的问题有关。

使用的pgsql版本是9.6.13。

postgresql
2个回答
3
投票

在Unix上,您可以使用

file
命令来确定它是否是纯文本文件。

但我会使用

pg_restore -l dumpfile
:如果出现错误,它是纯格式转储。


0
投票

这可以在 Bash 中完成工作:

#!/bin/bash

DUMP_FILE="/path/to/your/database_dump.sql"

if [[ $(pg_restore -l "${DUMP_FILE}" 2>/dev/null) ]];
then
  do stuff with pg_restore
else
  do stuff with psql
fi
© www.soinside.com 2019 - 2024. All rights reserved.