Lazy Diary @ Hatena Blog

PowerShell / Java / miscellaneous things about software development, Tips & Gochas. CC BY-SA 4.0/Apache License 2.0

apply(1) で指定したコマンドを一定回数実行

IMC の MINT から触れるシステム (OSF1 V5.1, alpha) には apply(1) というコマンドがあって、これは例えば次のような動作をする。

$ apply echo a b c d
a
b
c
d
$ apply -2 echo a b c d
a b
c d
$ apply -0 'echo foo' a b c d
foo
foo
foo
foo

オプションで指定した数ずつコマンドに引数を渡して連続実行する。 -0 を指定すると、単に引数の数の回数だけコマンドを実行する。 Linux には入ってないみたい(FreeBSD にはあった)。

$ apply -0 'dvips -f -T 182mm,257mm main.dvi | psresize -pa4 -Pb5 | psnup -2 | lpr' 1 2 3 4 5 6 7 8 9

とすれば、力技だが main.dvi を psutils に通したものが 9 部刷れる(はず)。 psutils を通した PostScript ファイルは lpr の -#num オプションで複数部印刷ができないので、これは便利だなぁと思ったんだけど…… Linux 用のがあるって話、誰か知りませんか?