diff --git a/src/main.c b/src/main.c
index eab74d8d32172caee12280112ad454ed710fa825..6665290634a7c9de6a710275ad140e20c68139e3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -103,6 +103,8 @@ struct context {
 
 	bool sort;
 
+	bool print;
+
 	char* xaxis;
 	size_t xaxis_n;
 
@@ -324,6 +326,13 @@ int main( int argc, char** argv ) {
 			.arg = G_OPTION_ARG_NONE,
 			.arg_data = &( context->time ),
 			.description = "Format x-axis as time",
+		}, {
+			.long_name = "print",
+			.short_name = 'p',
+			.flags = G_OPTION_FLAG_IN_MAIN,
+			.arg = G_OPTION_ARG_NONE,
+			.arg_data = &( context->print ),
+			.description = "Copy input to stdout",
 		}, {
 			NULL,
 		},
@@ -1087,6 +1096,9 @@ static int data_callback( void* data ) {
 				context->read_buffer + strlen( context->read_buffer ),
 				buffer, l + 1 );
 
+			if ( context->print ) {
+				write( STDOUT_FILENO, buffer, l );
+			}
 
 		}