Socket
Book a DemoInstallSign in
Socket

put-cli

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

put-cli

A command-line utility to move, rename, copy and symlink files, uses simple placeholders rather than regular expressions.

0.1.0
latest
Source
npmnpm
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

put is an ISC-licensed command-line utility to move, rename, copy and symlink files. put uses a simple placeholder syntax to transform input filenames to output filenames. Think of it as an easier-to-use but perhaps less powerful Linux rename.

Usage

# copy files
put 'app/config/nginx/{type}' '/etc/nginx/{type}.conf'

# move or rename files
put --move 'music/{title} - {album} ({artist})' 'music/{artist} - {title}'

# symlink files
put --link 'posts/{year}/images/{slug}' 'build/images/{year}-{slug}'

Any intermediate directories that don't yet exist will be created for you. It acts like mkdir -p and rename glued together, if you will.

See put --help for more details.

Install using npm install put-cli -g. You'll need to have node.js installed for this to work.

Status

Works for me, but needs unit tests before it can be declared safe for public consumption.

Limitations and roadmap

  • put has no way to limit which file types it operates on, though the ability to specify either a list of extensions or a file type (image, data, document) is planned.
  • put can symlink or move directories, but it can't copy a directory (yet).
  • put will never overwrite a file. There is no command-line flag or other option to force this or decide interactively. This is a precaution, as this utility currently lacks any sort of tests and I don't want to destroy anybody's filesystem. As tests are added, this restriction will be removed.
  • put requires the NPM package installer and a working Node.js setup. It needs OS packages.

Use from node.js

The put-cli library exposes copy, move and link functions. They all have the same interface:

fn(source, destination, options, callback)

Options and callback are optional.

For example:

var put = require('put');
var source = 'images/{year}-{description}-{width}x{height}';
var destination = 'images/{year}/{description}';
var options = {verbose: true};
put.move(source, destination, options, function(err) {
    console.log('done!');
});

Keywords

cli

FAQs

Package last updated on 09 Sep 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.