Skip to main content
Question

Where is the PaperCut client app?

  • August 22, 2025
  • 28 replies
  • 515 views

Show first post

28 replies

agungsujiwo
Forum|alt.badge.img+9
  • Contributor
  • September 8, 2025

@mickgrant 

@agungsujiwo 

The log file looks to hold the papercut client version but then the script has to check the most recent data because the log holds a bunch of previous papercut client versions.  The log has a bunch of dates that has the version at the time the log had data added to it. 

See the attached picture. Bottom right hand corner looks.to be where Papercut displays the papercut client version. 

 

Hi ​@tcandela 

Here is a script to find the latest running version.

#!/bin/bash
# Create by Agung Sujiwo
# Path ke log file PaperCut
LOGFILE="/Applications/PaperCut Print Deploy Client/data/logs/pc-print-deploy-client.log"

if [[ -f "$LOGFILE" ]]; then
# Retrieve the latest line based on the date (the timestamp at the beginning of the log: YYYY/MM/DD ...)
LAST_LINE=$(grep "PaperCut Print Deploy Client running on version" "$LOGFILE" | sort | tail -1)

# Search for the version pattern (number format x.x.x)
VERSION=$(echo "$LAST_LINE" | grep -oE "[0-9]+\.[0-9]+\.[0-9]+")
else
VERSION="Not Found"
fi

# Output ke Jamf Extension Attribute
echo "<result>$VERSION</result>"

 


Forum|alt.badge.img+20
  • Author
  • Contributor
  • September 8, 2025

@agungsujiwo exactly, the log file has the client version each time the log file gets information added to it. So if the log file ran 2 weeks ago and again today the Papercut client t version would probably  be different.  I'll use your script and let you know the results. Thanks


daniel_ross
Forum|alt.badge.img+20
  • Jamf Heroes
  • April 29, 2026

For those using the EdgeNode version of PaperCut here is the EA we use to detect the install and what build from that day is on the endpoint.

#!/bin/bash

PAPERCUT_DIR="/Library/PaperCut Hive"
VERSION_FILE="${PAPERCUT_DIR}/.version"
EDGENODE_SERVICE="${PAPERCUT_DIR}/pc-edgenode-service"

if [[ -x "$EDGENODE_SERVICE" ]]; then
if [[ -f "$VERSION_FILE" ]]; then
version=$(/bin/cat "$VERSION_FILE" 2>/dev/null | /usr/bin/xargs)

if [[ -n "$version" ]]; then
echo "<result>$version</result>"
else
echo "<result>Installed - Version Unknown</result>"
fi
else
echo "<result>Installed - Version File Missing</result>"
fi
else
echo "<result>Not Installed</result>"
fi