LinuxCommandLibrary

box

Draw boxes/comments around text in a file

TLDR

Compile a new Phar file

$ box compile
copy

Compile a new Phar file using a specific configuration file
$ box compile [[-c|--config]] [path/to/config]
copy

Display information about the PHAR PHP extension
$ box info
copy

Display information about a specific Phar file
$ box info [path/to/phar_file]
copy

Validate the first found configuration file in the working directory
$ box validate
copy

Verify the signature of a specific Phar file
$ box verify [path/to/phar_file]
copy

Display help
$ box help
copy

SYNOPSIS

box [global-options] <command> [<command-options> [<args>]]

PARAMETERS

-h, --help
    Show help for specified command

-v, --verbose
    Enable verbose output and logging

--version
    Display box CLI version

--color
    Force colored terminal output

--no-color
    Disable colored output

--no-progress
    Disable progress bars

--format json|csv|tsv
    Output data in specified machine-readable format

--access-token TOKEN
    Use custom access token for auth

--as-user ID
    Impersonate specific Box user ID

DESCRIPTION

The box command is the official Node.js-based command-line interface (CLI) for Box.com, a cloud content management and file sharing platform. It allows users to interact with Box content programmatically from the Linux terminal, supporting operations like file/folder uploads/downloads, sharing, searching, metadata management, user/group administration, and enterprise features such as retention policies and events.

Ideal for automation, scripting, backups, and DevOps workflows, box authenticates via OAuth2, developer tokens, or JWT for system-level access. It outputs in human-readable, JSON, or CSV formats for easy parsing in scripts.

Installation requires Node.js: run npm install -g @box/cli. Initial setup involves box login for interactive auth or configuring apps in the Box Developer Console for non-interactive use. Subcommands are structured like box files:upload localfile remote_id, with verbose logging and progress indicators.

As of recent versions, it supports Box API v2.0+, shielding users from raw HTTP API calls. It's cross-platform but shines in Linux environments for server-side tasks. Limitations include dependency on internet connectivity and Box account permissions.

CAVEATS

Not pre-installed; requires Node.js/npm. Needs Box.com account and API access configured. Rate-limited by Box API quotas. Subcommands require specific permissions.

INSTALLATION & SETUP

Install: npm install -g @box/cli
Login: box login
Or config token: box configure

EXAMPLE USAGE

box files:upload ./doc.pdf 12345
box folders:list --limit 10
box search 'report' --format json

HISTORY

Developed by Box.com, first public release in 2018 as @box/cli via npm. Evolved from early API wrappers, with major updates aligning to Box Platform API v2.0+. Actively maintained for enterprise compliance and new features like Shield classifications.

SEE ALSO

rclone(1), curl(1), rsync(1)

Copied to clipboard