dog to narzędzie wiersza polecenia, które pobiera dowolną liczbę argumentów, z których pierwszy to tekst do napisania, a pozostałe to dowolnie wiele plików.
dogNarzędzie zostanie podzielony tekst w równych porcjach tych plików. Jeśli pozostała część n, pierwsze npliki otrzymują dodatkowy bajt
dogjest przeciwieństwem catforallu jako takiego x, co należy przyjąć.
$> dog x a.txt b.txt ...
$> cat a.txt b.txt ...
x$>
Gdzie ...wskazuje dowolnie wiele plików.
Przykład (12 bajtów, 3 pliki, można podzielić równomiernie):
$> ./dog.py "Dogs vs Cats" a.txt b.txt c.txt
$> cat a.txt
Dogs$> cat b.txt
vs $> cat c.txt
Cats$> cat a.txt b.txt c.txt
Dogs vs Cats$>
Przykład z resztą (13 bajtów, 5 plików, reszta 3):
9$>./dog.py "0123456789abc" a.txt b.txt c.txt d.txt e.txt
$> cat a.txt
012$> cat b.txt
345$> cat c.txt
678$> cat d.txt
9a$> cat e.txt
bc$> cat a.txt b.txt c.txt d.txt e.txt
0123456789abc$>
tacjest prawdziwy .