if (cmd.hasOption("h")) {
printHelp(options);
} else {
final TailMinusEff tail = new TailMinusEff();
LogFormat format = CatMain.loadFormat(cmd);
tail.setAnsi(!cmd.hasOption("a"));
List<File> files = commandFiles(cmd);
Iterator<Line> bli = IoUtil.loadFiles(format, files, true);
tail.setI(bli);
if (cmd.hasOption("o")) {
tail.setRenderer(PrintfRenderer.parse(cmd.getOptionValue("o")));
} else if (cmd.hasOption("d")) {
tail.setRenderer(new DebugRenderer());
} else {
Renderer<Line> renderer = format.getRenderer();
if (files.size() > 1 && renderer instanceof FieldRenderer) {
FieldRenderer fieldRenderer = (FieldRenderer) renderer;
fieldRenderer.prependColumn(LogConstants.FILE_NAME, IoUtil.getMaxFilenameWidth(files));
fieldRenderer.addHighlight(new FilenameHighlight());
}