Détail du package

executable-metadata

Anadian220MIT0.2.0

Simply parse and print metadata from an executable binary's header from the command-line.

executable, binary, header, metadata

readme

executable-metadata

standard-readme compliant Semantic Versioning 2.0.0 Conventional Commits License CI Coverage Status npm

Simply parse and print metadata from an executable binary's header from the command-line.

Table of Contents

  • Background
  • Install
  • Usage
  • CLI
  • API
  • Contributing
  • License

    Background

    This was more of a research experiment than anything else. executable-metadata is a command-line application and NodeJS module for parsing metadata from the headers of Unix ELF and Windows PE formatted executable binaries. Really, making this was just an excuse for me to learn the formats but it does work and it may be useful if you ever find yourself specifically needing high-level information on executables in a strictly NodeJS environment: as unlikely as that may be. It returns parsed metadata in a simple JSON object so it can easily be converted or formatted however you need. When doing things outside of a pure NodeJS is acceptable, you may be better off using an existing command-line tool for parsing executable files; for example, readelf can tell you far more about a given ELF than this can.

    Install

    To use it as a dependency in a NodeJS project, run:
    npm install --save executable-metadata
    To use it as a global command-line app, run:
    npm install --global executable-metadata

    Usage

    To use the command-line interface:
    [npx] executable-metadata [options] binary_files ...
    Remember to prepend npx to the command when you haven't installed it globally.

    CLI

    ``` executable-metadata

Simply parse and print metadata from an executable binary's header from the
command-line.

Options

-h, --help Writes this help text to STDOUT.
-v, --verbose Verbose output to STDERR.
-V, --version Writes version information to STDOUT.
-x, --no-quick-exit Don't immediately exit after printing help, version, and/or config
information.
-I, --input string[] The path to the file(s) to read input from.
-o, --stdout Write output to STDOUT.
-O, --output string The name of the file to write output to.
-p, --pasteboard [Reserved] Copy output to pasteboard (clipboard).
-c, --config Print search paths and configuration values to STDOUT.

# API
```js
const ExecutableMetadata = require('executable-metadata');

See API.md for full API.

Contributing

Changes are tracked in CHANGELOG.md.

License

MIT ©2021-2022 Anadian

SEE LICENSE IN LICENSE

Creative Commons LicenseThis project's documentation is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

changelog

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.2.0 (2022-01-13)

⚠ BREAKING CHANGES

  • Fixed the soft "crash" when no input files were specified and have comfirmed to have fixed the Windows global install issues.

Bug Fixes

  • Fixed the soft "crash" when no input files were specified and have comfirmed to have fixed the Windows global install issues. (05bcb4c)

0.1.3 (2022-01-11)

Documentation

  • Removed broken DavidDM image from the README.md (0432205)

0.1.2 (2022-01-11)

Continuous Integration

  • Adding newer Nodes to CI. (9cfa050)

0.1.1 (2021-03-01)

Bug Fixes

  • Moved concise-buffer to regular dependencies. (917e925)

0.1.0 (2021-02-21)

⚠ BREAKING CHANGES

  • Greatly improved coverage.

Continuous Integration

  • Greatly improved coverage. (77ea06c)

0.0.2 (2021-02-21)

Tests

  • Changing the few buffers to strings. (49c5f29)
  • Normalising all the strings. (e96e7fa)
  • Trying simple string.replace; again! (d3f2f75)
  • Trying simple string.replace. (dfebee8)
  • Working on improving test support on Windows. (ebd357e)

Documentation

  • Documentation updated; ready for first real npm release. (07d952d)

0.0.1 (2021-02-21)

Tests

  • Fixing test data to work on all platforms. (190a543)

0.0.0 (2021-02-21)

Features

  • Basic working implementation. (2172aa3)
  • Improved documentation comments and error checking. (06bf341)

Tests

  • Basic API semi-complete. (2b357a3)
  • Tests fully implemented. (43aed9b)

Continuous Integration

Documentation