Changes for version 1.048 - 2024-12-09
- All changes from Michael Mikonos
- apply
- allow a space after -a so it isn't confused with bundled options (#806)
- bc
- cal
- silence some warnings with better checks (#805)
- chgrp
- accept group ID argument (#798)
- chmod
- chown
- cmp
- better messages when files differ at end of file (#766)
- cp
- cp -i will continue to next file if there is an error. (#827)
- cut
- du
- ed
- w commands prints byte count when ed is started without a filename (#760)
- correctly escape literal $ in binary output (#762)
- various internals improvements (#763)
- an empty search reuses the previous search (#764)
- add g command to grep a buffer (#765)
- -s now also suppresses diagnostics when editing a file (#767)
- allow repeated search with // and ?? (#768)
- add v command for inverted searches (#770)
- various internals improvements (#771)
- various internals improvements (#772)
- re-add support for /re/ address-mode (#773)
- support ?re? address mode (#774)
- various internals improvements (#775)
- various internals improvements (#777)
- various internals improvements (#780)
- % takes OpenBSD meaning of "all addresses"; it can only be used alone (#782)
- implement global substitute: g/search1/s/search2/replace/ allows search1 to filter the lines to process, then search2 determines the text to replace per line (#786)
- implement repeat search for g// & v// (#787)
- various internals improvements (#788)
- make wq shortcut work again after previous fix changed it (#790)
- implement ';' addressing mode (#792)
- remove -d (debugging) switch since the debugging output isn't that helpful (#793)
- support '^' addressing (#797)
- various internals improvements (#808)
- basic support for mark (K) command (#812)
- implement reading output from a command (`r !cmd`) and writing to a command (`w !cmd`), and reject filenames that start with ! for f command. (#824)
- various internals improvements (#829)
- m command accepts address argument (#830)
- various internals improvements (#831)
- various internals improvements (#834)
- disallow trailing '/' when setting filename (#845)
- reject filename of '.' or '..' (#849)
- always exit with 1 for failure (#863)
- add undo (u) command (#869)
- update current line in undo (#871)
- expr
- file
- -f works properly by checking the definedness of its argument instead of truthiness, and chomps the lines it reads. (#769)
- fmt
- use GNU's method for formatting so single words aren't broken up (#866)
- fold
- glob
- grep
- be more careful with handling the TERM env var (#749)
- various internals improvements (#756)
- allow multiple -e or -f on the command line (#757)
- -Fi shows original line, not line as all lowercase (#776)
- -a (binary files) changed to act like the OpenBSD/GNU by printing the "line" that matched (#795)
- add -Z to operate in zgrep mode (don't automatically decompress everything) (#799)
- Remove -1 switch. Use -m 1 instead, for GNU compatibility (#809)
- implement -A for context after a match (#810)
- various internals improvements (#811)
- add -I (capital i) switch to ignore binary files (#815)
- make space after -e or -f optional (#816)
- remove -p and -P for paragraph mode, which was a non-standard perl extension (#817)
- make -R a synonym for -r (#820)
- return no match exit code for an empty pattern file used with -f (#821)
- various internals improvements (#826)
- hangman
- consistently handle eof when there is not a guess (#842)
- hexdump
- id
- exit 1 on failure (not die with 255) (#846)
- install
- kill
- ls
- don't automatically opendir everything (#801)
- mail
- don't die for message id 0 (#785)
- trim leading spaces from command input (#800)
- use VISUAL for the path to vi, or look for vi in the PATH (#823)
- various internals improvements (#825)
- various internals improvements (#832)
- add --version and improve usage message (#833)
- -f usage forbids extra args (#870)
- mkdir
- default permissions are 0777 unless you specify them (#854)
- od
- par
- change to using getopts, so now unrecognized options complain (#752)
- patch
- note that patch exists with 0 for success (#779)
- pr
- allow 0 to be a valid header (check for definedness, not truth) (#791)
- rmdir
- test that an argument is a directory before trying to remove it (better error message) (#803)
- spell
- various internals improvements (#838)
- split
- allow /0/ pattern split (check pattern is defined, not true) (#807)
- tail
- tsort
- uniq
- arguments are now exactly one input file and optionally one output file (#819)
- units
- allow -fFILE (no space before argument) (#844)
- unshar
- change to Getopt::Std (#860)
- what
- wump
- various internals improvements (#802)
Documentation
create or extend a bibliographic database
Run a command many times with different arguments
create and maintain library archives
display system machine type
improve your arithmetic skills
interpret ASA/FORTRAN carriage-controls
pattern-directed scanning and processing language
print large banner on printer
encode and decode base64 data
remove directory and suffix from filenames
an arbitrary precision calculator language
format input as punch cards
displays a calendar and the date of easter
concatenate and print files
change group ownership of files
the Book of Changes
change permissions of files
change ownership of files
clear the screen
compare two files
filter reverse line feeds from input
remove columns from a file
select or reject lines common to two files
copy files and/or directories
select portions of each line of a file
display date and time
an arbitrary precision calculator
strip troff, eqn and tbl sequences from text
compute `intelligent' differences between two files
print the directory name of a path
display disk usage statistics
echo arguments
text editor
Run a program in a modified environment
convert tabs to spaces
evaluate expression
factor a number
Exit unsuccesfully
determine file type
search directory tree for files matching a pattern
plays the children's game of Go Fish
simple text formatter
wrap each input line to fit specified width
print a random, hopefully interesting, adage
print names of those who have sent mail
find pathnames matching a pattern
search for regular expressions and print
perl version of the game hangman
print the first lines of a file
print input as hexadecimal
show user information
install files and directories
relational database operator
send signals to a process
create links
reserves a terminal
find lines in a sorted list
list file/directory information
implementation of Berkeley mail(1)
generate a maze problem
extract MIME attachments in uudecode-like manner
create directories
make named pipes
play a game of MOO
translate text to morse code
line numbering filter
dump files in octal and other formats
create a Perl archive of files
merge corresponding or subsequent lines of files
apply a diff file to an original
eformatray inputway asway Igpay Atinlay
probe for network hosts
display the phase of the moon
reformat input as paper tape
convert text files for printing
generate primes
Display the environment
format and print data
working directory name
Let it rain
display lines at random, or exit with a random value
reverse lines of a file
remove directory entries
remove directories
fight off villainous robots
print a numeric sequence
create a shell archive of files
suspend execution for a number of seconds
sort or merge text files
scan a file for misspelled words
split a file into pieces
extract strings
display file checksums and block counts
concatenate and print files in reverse
display the last part of a file
manipulate tape archives
pipe fitting
condition evaluation utility
times the execution of a command
change access and modification times of files
translate or delete characters
Exit succesfully
topological sort
return user's terminal name
print system information
convert spaces to tabs
report or filter out repeated lines in a file
conversion program
remove a file
extract files from a Perl archive
extract files from a shell archive
decode a binary file
encode a binary file
paragraph, line, word, character, and byte counter
extract version information from a file
report full paths of commands
display effective user ID
Internet domain name and network number directory service
find words which can be made from a string of letters
play a game of "Hunt the Wumpus"
construct argument list(s) and execute utility
print out a string till doomsday
Provides
in lib/PerlPowerTools/SymbolicMode.pm