#!/usr/bin/perl -t use strict; use warnings; use Net::CUPS::Destination; # Define Printer my $cups = Net::CUPS->new() or die $!; my $printer = $cups->getDestination("CITIZEN-CT-S801") or die $!; # Read Data my($variable)=''; open(my $fh, '>', \$variable) or die "Cannot open file for writing: $!\n"; print $fh "Some data 1\n"; print $fh "Some data 2\n"; print $fh "Some data 3\n"; close($fh); # Print Data open($fh, '<', \$variable) or die "Cannot open file for reading: $!\n"; if ($printer->printFile($fh, 'jobx')) { print 'Success';} else { my $error = $printer->getError(); if ($error) { print "Printer Error: " . $error . "\n"; } } close($fh); exit;