Copy stdin to stdout: Difference between revisions

From Rosetta Code
Content added Content deleted
m (→‎{{Header|Perl}}: Re-fix language tag. The language tag determines what syntax highlighting gets applied, NOT where it gets executed.)
(Prolog)
Line 20: Line 20:
<lang sh>
<lang sh>
sed -e ''
sed -e ''
</lang>

=={{Header|Swi-prolog}}==
<lang Prolog>
%File: stdin_to_stdout.pl
:- initialization(main).

main :- repeat,
get_char(X),
put_char(X),
X == end_of_file,
fail.
</lang>

Invocation at the command line:
<lang sh>
swipl stdin_to_stdout.pl
</lang>
</lang>

Revision as of 14:21, 11 November 2018

Copy stdin to stdout is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.

Create an executable file that copies stdin to stdout, or else a script that does so through the invocation of an interpreter at the command line.

Perl

<lang perl> perl -pe </lang>

Perl 6

When invoked at a command line: Slightly less magical than Perl / sed. The p flag means automatically print each line of output to STDOUT. The e flag means execute what follows inside quotes. ".lines" reads lines from the assigned pipe (file handle), STDIN by default.

<lang perl6>perl6 -pe'.lines'</lang>

When invoked from a file: Lines are auto-chomped, so need to re-add newlines (hence .say rather than .print) <lang perl6>.say for lines</lang>

sed

<lang sh> sed -e </lang>

Swi-prolog

<lang Prolog> %File: stdin_to_stdout.pl

- initialization(main).

main :- repeat, get_char(X), put_char(X), X == end_of_file, fail. </lang>

Invocation at the command line: <lang sh> swipl stdin_to_stdout.pl </lang>