Extends shell * and ? wildcards to allow inserting matched strings like Windows 'copy *.old =.new'

Some examples:
# Rename current files as old
doall 'mv *.cur *.old'

# Compress camcorder DV files
doall 'ffmpeg -i *.dv *.mp4'

# Move files into directories according to their extension
doall 'mv *.* $2/$1.$2'

# Symbolic links from vmlinuz.new to vmlinuz-5.12.6-foo, similarly config.new System.map.new
doall 'ln -s /boot/*-5.12.6-* /boot/$1.new'

# Hard link 3-character abbreviations for file extensions
doall 'ln *.???* $1.$2'


As shown above, instead of '=' to indicate insertions, doall uses either * or $1 etc.

doall -p (pretend mode) shows a list of commands instead of executing them
doall -i (interactive mode) asks for confirmation for each command in turn
doall -k (keep-running mode) ignores failing commands

Features

  • Pure POSIX shell script except in pretend mode
  • Simple syntax
  • Correctly handles filenames containing special characters such as quotes, line feeds and semicolons

Project Samples

Project Activity

See All Activity >

License

GNU General Public License version 3.0 (GPLv3)

Follow doall

doall Web Site

Other Useful Business Software
AI-powered service management for IT and enterprise teams Icon
AI-powered service management for IT and enterprise teams

Enterprise-grade ITSM, for every business

Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
Try it Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of doall!

Additional Project Details

Operating Systems

Linux

Intended Audience

Advanced End Users, End Users/Desktop, System Administrators

User Interface

Command-line, Console/Terminal

Programming Language

Unix Shell

Related Categories

Unix Shell File Managers, Unix Shell System Shells, Unix Shell Systems Administration Software

Registered

2021-06-20