#!/usr/bin/perl -w
use strict;

# Converts newlines on input into nulls.
# Useful for feeding input into xargs -0.
# For instance, suppose you want to find iTunes duplicates like this:
#
# for f in `ls *.mp3`; do
#     ls "`basename $f .mp3` 1.mp3" 2>/dev/null;
# done;
# 
# That won't work if your filenames include spaces, because `for` will split on all whitespace.
# (It is also broken because `basename` will interpret $f as multiple arguments, not as just one.)
# Using newtonull, you could replace the for loop with this:
#
# ls -1 *.mp3 | newtonull | xargs -0i basename "{}" .mp3 | newtonull | xargs -0i ls "{} 1.mp3" 2>/dev/null

while (<>) {
	chomp;
	print "$_\0";
}
