update - Greple module to update file content
greple -Mupdate
Options:
--update replace file content --with-backup make backup files --diff produce diff output --U# specify unified diff context length
Version 0.03
This greple module substitute the target file content by command output. For example, next command replace all words in the file to uppercase.
greple -Mupdate '\w+' --cm 'sub{uc}' --update file
Above is a very simple example but you can implement arbitrarily complex function in conjunction with other various greple options.
You can check how the file will be edited by --diff option.
greple -Mupdate '\w+' --cm 'sub{uc}' --diff file
Command sdif or cdif would be useful to see the difference visually.
greple -Mupdate '\w+' --cm 'sub{uc}' --diff file | cdif
This module has been spun off from App::Greple::subst module. Consult it for more practical use case.
Update the target file by command output. Entire file content is produced and any color effects are canceled. Without this option, greple behaves as normal operation, that means only matched lines are printed.
File is not touched as far as its content does not change.
Backup original file with .bak suffix. If optional parameter is given, it is used as a suffix string. If the file exists, .bak_1, .bak_2 ... are used.
.bak
.bak_1
.bak_2
Option -diff produce diff output of original and converted text. Option -U# can be used to specify context length.
$ cpanm App::Greple::update
$ cpanm https://github.com/kaz-utashiro/greple-update.git
App::Greple, https://github.com/kaz-utashiro/greple
App::Greple::update, https://github.com/kaz-utashiro/greple-update
App::Greple::subst, https://github.com/kaz-utashiro/greple-subst
App::sdif, App::cdif
Kazumasa Utashiro
Copyright 2022 Kazumasa Utashiro.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install App::Greple::update, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::Greple::update
CPAN shell
perl -MCPAN -e shell install App::Greple::update
For more information on module installation, please visit the detailed CPAN module installation guide.