mirror of
https://github.com/johnkerl/miller.git
synced 2026-01-23 02:14:13 +00:00
29 lines
846 B
Ruby
Executable file
29 lines
846 B
Ruby
Executable file
#!/usr/bin/env ruby
|
|
|
|
# ================================================================
|
|
# This is a no-longer-needed one-off script -- but it's an example of
|
|
# batch-editing for files in test/cases.
|
|
#
|
|
# Before:
|
|
# cmd: mlr --flags put '$z = $x + $y'
|
|
#
|
|
# After:
|
|
# cmd: mlr --flags put -f ${CASEDIR}/mlr
|
|
# mlr: $z = $x + $y
|
|
# ================================================================
|
|
|
|
ARGV.each do |cmd_file_name|
|
|
mlr_file_name = cmd_file_name.sub(/\.cmd$/, '.mlr')
|
|
cmd_file_contents = File.read(cmd_file_name)
|
|
if cmd_file_contents =~ /.*'.*'.*/
|
|
cmd_file_contents.match(/(.*)'(.*)'(.*)/)
|
|
left = $1
|
|
middle = $2
|
|
right = $3
|
|
File.write(mlr_file_name, middle.strip + "\n")
|
|
File.write(cmd_file_name, "#{left}-f #{mlr_file_name}#{right}".strip + "\n")
|
|
puts mlr_file_name
|
|
else
|
|
puts cmd_file_name
|
|
end
|
|
end
|