net yet implemented with square brackets; example of current usage: ls v0{12:24}.jpg numbered 012:024 ls v0{12:2:24}.jpg even numbered 012 to 024 GASH(1) User Commands S. Mann, 1999 NAME gash - Globbing Arithmetic SHell SYNOPSIS gash [options] [file] DESCRIPTION Gash is an sh-like command language interpreter that executes commands read from the standard input or from a file. Gash also incorporates useful features from the BASH and C shells (bash and csh). RATIONALE The main inspiration for gash comes from working with lists of files, in which filenams are numbered sequentially. Most shells do not distinguish between numbers and other characters, and therefore do not perform arithmetic well. EXAMPLES mv v0000[123-456].jpg /tmp moves files named v0000123.jpg, v0000124.jpg, ... v0000456.jpg into /tmp This overcomes the lack of carry in most shells, e.g. that mv v0000[1-4][2-5][3-6].jpg doesn't do the right thing since there's no carry or proper arithmetic in bash. Altough one could write an expression to do this right, in bash, the expression is cumbersome and lengthier than the equivalent expression in gash. other examples of file list manipulation in gash: rm v0000[222-2-444].jpg deletes even numbered files v0000222.jpg, v0000224.jpg, ... v0000444.jpg rm v0000[222-2-444].jpg deletes even numbered files v0000222.jpg, v0000224.jpg, ... v0000444.jpg cement c222_2_444.jpg v0000[100-10-200]d.jpg cements every tenth file v0000100.jpg, v0000110.jpg, ... v0000200.jpg cement c222_-2_444.jpg v0000[100--10-200]d.jpg cements reverse order: v0000200.jpg, v0000190.jpg, ... v0000100.jpg MATLABLIKE SYNTAX equaivalent syntax with : instead of usual shell - sign can be used: rm v0000[222:2:444].jpg deletes even numbered files v0000222.jpg, v0000224.jpg, ... v0000444.jpg ARGUMENT LIST LENGTH Gash contains sufficient capacity to handle large argument lists, e.g. globbing ten million filenames will not give an "Argument list too long" error.