diff options
author | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2015-06-17 16:59:34 -0400 |
---|---|---|
committer | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2015-06-17 16:59:34 -0400 |
commit | 2ca3347e3004d985b1a369fd95371f9400f2e248 (patch) | |
tree | 96710b9cd9bdf3ff57e2aa827f3b1568284cc32e /awklib | |
parent | 3d47e0edfe9dbac583f54cb265063efb9d37fa38 (diff) | |
parent | 12e3cbe4220792bbcb58f1d5d3dbbcc6e2f7a1db (diff) | |
download | egawk-2ca3347e3004d985b1a369fd95371f9400f2e248.tar.gz egawk-2ca3347e3004d985b1a369fd95371f9400f2e248.tar.bz2 egawk-2ca3347e3004d985b1a369fd95371f9400f2e248.zip |
Merge branch 'gawk-4.1-stable'
Diffstat (limited to 'awklib')
-rw-r--r-- | awklib/eg/lib/inplace.awk | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/awklib/eg/lib/inplace.awk b/awklib/eg/lib/inplace.awk index d1574654..15a83f58 100644 --- a/awklib/eg/lib/inplace.awk +++ b/awklib/eg/lib/inplace.awk @@ -5,15 +5,29 @@ # Please set INPLACE_SUFFIX to make a backup copy. For example, you may # want to set INPLACE_SUFFIX to .bak on the command line or in a BEGIN rule. +# By default, each filename on the command line will be edited inplace. +# But you can selectively disable this by adding an inplace=0 argument +# prior to files that you do not want to process this way. You can then +# reenable it later on the commandline by putting inplace=1 before files +# that you wish to be subject to inplace editing. + # N.B. We call inplace_end() in the BEGINFILE and END rules so that any # actions in an ENDFILE rule will be redirected as expected. +BEGIN { + inplace = 1 # enabled by default +} + BEGINFILE { if (_inplace_filename != "") inplace_end(_inplace_filename, INPLACE_SUFFIX) - inplace_begin(_inplace_filename = FILENAME, INPLACE_SUFFIX) + if (inplace) + inplace_begin(_inplace_filename = FILENAME, INPLACE_SUFFIX) + else + _inplace_filename = "" } END { - inplace_end(FILENAME, INPLACE_SUFFIX) + if (_inplace_filename != "") + inplace_end(_inplace_filename, INPLACE_SUFFIX) } |