Skip to content

daimor/isc-tar

Repository files navigation

Gitter

Tar compress tool for InterSystems IRIS products family

This tool helps to extract data right from tar.gz or just tar archives with ObjectScript. Or compact any files/folders with tar format and make tar.gz.

Standalone installation

Import and compile file zUtils.FileBinaryTar.xml to %SYS namespace. Or install with zpm

zpm "install isc-tar"

Development mode

docker-compose up -d --build

Avialable in any namespace, code stored in %SYS.

Examples

Extract tar.gz file

  Set gzip = 1
  Set extracted = ##class(%zUtils.FileBinaryTar).ExtractFile("/tmp/some.tgz", gzip)
  Set tSC = extracted.FindPath("folder/subfolder/test.txt", .file)
  Set fileContent = file.fileData
  While 'fileContent.AtEnd {
    /// read file from archive
  }
  Set tSC = extracted.ExtractTo("/tmp/some/place")

Compact folder/file to tar.gz file

  Set gzip = 1
  Set archive = ##class(%zUtils.FileBinaryTar).Compact("/tmp/some/place", gzip, "/tmp/some.tgz")