.\" Man page generated from reStructuredText. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "GDAL-DATASET-IDENTIFY" "1" "Aug 18, 2026" "" "GDAL" .SH NAME gdal-dataset-identify \- Identify driver opening dataset(s) .sp Added in version 3.12. .sp \fBgdal dataset identify\fP reports the name of drivers that can open one or several dataset(s). .SH SYNOPSIS .INDENT 0.0 .INDENT 3.5 .sp .EX Usage: gdal dataset identify [OPTIONS] Identify driver opening dataset(s). Positional arguments: \-\-input, \-\-filename File or directory name [may be repeated] [required] Common Options: \-h, \-\-help Display help message and exit \-\-json\-usage Display usage as JSON document and exit \-\-config = Configuration option [may be repeated] \-q, \-\-quiet Quiet mode (no progress bar or warning message) [not available in pipelines] Options: \-o, \-\-output Output vector dataset (created by algorithm) \-f, \-\-of, \-\-format, \-\-output\-format Output format \-\-co, \-\-creation\-option = Creation option [may be repeated] \-\-lco, \-\-layer\-creation\-option = Layer creation option [may be repeated] \-l, \-\-output\-layer Output layer name \-\-overwrite Whether overwriting existing output dataset is allowed \-r, \-\-recursive Recursively scan files/folders for datasets \-\-force\-recursive Recursively scan folders for datasets, forcing recursion in folders recognized as valid formats \-\-detailed Most detailed output. Reports the presence of georeferencing, if a GeoTIFF file is cloud optimized, etc. \-\-report\-failures Report failures if file type is unidentified .EE .UNINDENT .UNINDENT .SH OPTIONS .INDENT 0.0 .TP .B \-\-filename Any file name or directory name. Required. May be repeated .UNINDENT .INDENT 0.0 .TP .B \-o, \-\-output Added in version 3.13. .sp Output vector dataset that will have at a minimum fields \fBfilename\fP and \fBdriver\fP, and if \fI\%\-\-detailed\fP is specified, also \fBlayout\fP (whose value can be for example \fBCOG\fP), \fBfile_list\fP (side\-car files), \fBhas_crs\fP, \fBhas_geotransform\fP and \fBhas_overview\fP\&. .sp When this argument is not specified, the result report is emitted to the standard output stream, either as JSON or text (depending on \fI\%\-\-output\-format\fP), for command line execution, or in the \fBoutput\-string\fP argument when used from the API. .sp Note that this is not a positional argument, so the \fB\-o\fP or \fB\-\-output\fP switch must be explicitly used before specifying the name. .UNINDENT .INDENT 0.0 .TP .B \-f, \-\-of, \-\-format, \-\-output\-format json|text| Which output format to use. Default is JSON, or text when invoked from command line. .sp Since GDAL 3.13, other GDAL vector formats with creation capabilities can be used, in which case \fI\%\-\-output\fP must be specified. .UNINDENT .INDENT 0.0 .TP .B \-r, \-\-recursive Recursively scan files/folders for datasets. .UNINDENT .INDENT 0.0 .TP .B \-\-force\-recursive Recursively scan folders for datasets, forcing recursion in folders recognized as valid formats. .UNINDENT .INDENT 0.0 .TP .B \-\-detailed Added in version 3.13. .sp Increases the level of details in the output. Reports the presence of georeferencing, if a GeoTIFF file is cloud optimized, etc. .UNINDENT .INDENT 0.0 .TP .B \-\-report\-failures Report failures if file type is unidentified. .UNINDENT .SH RETURN STATUS CODE .sp The program returns status code 0 in case of success, and non\-zero in case of error (non\-blocking errors emitted as warnings are considered as a successful execution). .SH EXAMPLES .SS Example 1: Identifying a single file .INDENT 0.0 .INDENT 3.5 .sp .EX $ gdal dataset identify NE1_50M_SR_W.tif NE1_50M_SR_W.tif: GTiff .EE .UNINDENT .UNINDENT .SS Example 2: Identifying a single file with JSON output .INDENT 0.0 .INDENT 3.5 .sp .EX $ gdal dataset identify \-\-of=JSON NE1_50M_SR_W.tif .EE .UNINDENT .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .EX [ { \(dqname\(dq: \(dqNE1_50M_SR_W.tif\(dq, \(dqdriver\(dq: \(dqGTiff\(dq } ] .EE .UNINDENT .UNINDENT .SS Example 3: Recursive mode will scan subfolders and report the data format .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .INDENT 3.5 .sp .EX $ gdal dataset identify \-r 50m_raster/ NE1_50M_SR_W/ne1_50m.jpg: JPEG NE1_50M_SR_W/ne1_50m.png: PNG NE1_50M_SR_W/ne1_50m_20pct.tif: GTiff NE1_50M_SR_W/ne1_50m_band1.tif: GTiff NE1_50M_SR_W/ne1_50m_print.png: PNG NE1_50M_SR_W/NE1_50M_SR_W.aux: HFA NE1_50M_SR_W/NE1_50M_SR_W.tif: GTiff NE1_50M_SR_W/ne1_50m_sub.tif: GTiff NE1_50M_SR_W/ne1_50m_sub2.tif: GTiff .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SS Example 4: Recursively scans subfolders and reports detailed information into a CSV file .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .INDENT 3.5 .sp .EX $ gdal dataset identify \-\-output out.csv \-\-detailed \-r 50m_raster/ .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SS Example 5: Check if a GeoTIFF file is cloud optimized using \-\-detailed .sp The following returns driver, and image layout details: \fBGTiff, layout=COG, has CRS, has geotransform, has overview(s)\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .INDENT 3.5 .sp .EX $ gdal dataset identify /vsicurl/https://sentinel\-cogs.s3.us\-west\-2.amazonaws.com/sentinel\-s2\-l2a\-cogs/36/Q/WD/2020/7/S2A_36QWD_20200701_0_L2A/TCI.tif \-\-detailed .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SH AUTHOR Even Rouault .SH COPYRIGHT 1998-2026 .\" Generated by docutils manpage writer. .