#!/usr/bin/env perl =pod =head1 NAME dog - lump STDIN and arguments together. =head1 SYNOPSIS dog [ B<--chomp> ] [ I ] [ I ] [ I<...> ] =head1 DESCRIPTION Concatenate arguments, and/or standard input, to standard output. =over =item B<-c --chomp> Remove any newlines from standard input. If an argument is B<->, it will be replaced with standard input. =back =head1 EXAMPLES echo bar | dog -c foo - baz =head1 AUTHOR Brennen Bearnes =cut use strict; use warnings; use Getopt::Long; # chomp any trailing newline from STDIN? my $chomp = 0; GetOptions(chomp => \$chomp); for (@ARGV) { if ($_ eq '-') { while () { chomp if (eof(STDIN) && $chomp); print; } } else { print; } }