Linux命令-pinky轻量级finger查询工具快速参考pinky是 GNU coreutils 的一部分用于查询远程主机上的用户信息finger 协议。它是finger命令的简化版本输出更简洁适合脚本调用。 目录命令简介语法格式常用选项输出字段说明实战示例与其他命令对比常见问题自动化脚本 命令简介pinky是一个轻量级 finger 查询工具用于查询远程主机上的用户信息。它通过Finger 协议RFC 1288与远程主机通信获取用户登录状态、空闲时间等信息。 适用场景场景说明远程用户查询查询远程主机上有哪些用户在线脚本集成输出格式简单适合脚本解析快速检查比finger命令更轻量启动更快⚠️注意现代系统中 Finger 协议通常被禁用安全风险pinky主要用于查询允许 Finger 协议的主机。 语法格式pinky[选项][user]host参数说明参数说明user可选指定查询的用户名不指定则查询所有用户host必填远程主机地址IP 或域名基本用法# 查询远程主机上的所有用户pinky example.com# 查询指定用户pinky aliceexample.com⚙️ 常用选项选项说明-l, --long使用长格式输出更多字段-b, --brief使用简短格式输出默认-s, --short使用极简格式输出-h, --help显示帮助信息-V, --version显示版本信息输出格式对比格式选项输出字段适用场景-b(默认)用户名、终端、登录时间、闲置时间快速查看-l(长格式)包含办公室、电话等扩展信息详细信息查询-s(短格式)仅用户名和终端脚本解析 输出字段说明默认输出brief 格式Login TTY FROM IDLE Host alice tty1 192.168.1.100 2m workstation bob tty2 10.0.0.5 10m laptop字段说明Login用户名TTY终端类型tty1,pts/0等FROM来源 IP 地址或主机名IDLE闲置时间2m 2分钟1h 1小时Host来源主机名如果有反向 DNS长格式输出-l 选项Login name: alice In real life: Alice Smith Office: /office/301 Home phone: 1-555-1234 Directory: /home/alice Shell: /bin/bash Last login: Thu Jun 12 09:30:00 2026 on tty1 from workstation New mail received: Thu Jun 12 08:00:00 2026 实战示例1️⃣ 基本查询# 查询远程主机上的所有用户pinky example.com# 查询指定用户pinky aliceexample.com输出示例Login TTY FROM IDLE Host alice tty1 192.168.1.100 2m workstation2️⃣ 使用长格式查询# 获取详细信息pinky-lexample.com# 查询指定用户长格式pinky-laliceexample.com输出示例Login name: alice In real life: Alice Smith Office: /office/301 Home phone: 1-555-1234 Directory: /home/alice Shell: /bin/bash Last login: Thu Jun 12 09:30:00 2026 on tty1 from workstation3️⃣ 脚本集成解析输出#!/bin/bash# 查询远程主机检查是否有用户在线HOSTexample.comUSERS$(pinky-s$HOST|tail-n2|wc-l)if[$USERS-gt0];thenecho✅$HOST上有$USERS个用户在线pinky-b$HOSTelseecho⚠️$HOST上没有用户在线或无法查询fi关键点使用-s(short) 格式输出更简洁适合脚本解析tail -n 2跳过标题行wc -l统计用户数量4️⃣ 批量查询多个主机#!/bin/bash# 批量查询多个主机的用户状态HOSTS(host1.example.comhost2.example.comhost3.example.com)forhostin${HOSTS[]};doecho 查询$host...ifping-c1$host/dev/null;thenecho✅$host可达用户列表pinky-b$host2/dev/null||echo Finger 协议被禁用elseecho❌$host不可达fiecho---done5️⃣ 结合finger命令对比# 使用 pinky 查询轻量级pinky example.com# 使用 finger 查询功能更全finger example.com# 对比输出格式echo pinky (brief) pinky-bexample.comecho finger finger example.com区别pinky输出简洁适合脚本finger输出详细支持更多选项如-m,-s,-l 与其他命令对比命令协议输出详细度适用场景pinkyFinger⭐⭐脚本调用、快速查询fingerFinger⭐⭐⭐⭐交互式查询、详细信息who本地⭐⭐查询本地登录用户w本地⭐⭐⭐查询本地用户 正在执行的命令users本地⭐仅显示用户名列表典型对比示例# 查询本地用户who 命令who# 输出alice tty1 2026-06-12 09:30# bob tty2 2026-06-12 09:35# 查询远程用户pinky 命令pinky example.com# 输出Login TTY FROM IDLE Host# alice tty1 192.168.1.100 2m workstation提示pinky和finger查询远程主机而who/w/users查询本地系统。❓ 常见问题Q1:pinky命令找不到A: 安装coreutils包# Debian/Ubuntusudoapt-getinstallcoreutils# RHEL/CentOSsudoyuminstallcoreutils# Arch Linuxsudopacman-ScoreutilsQ2: 查询远程主机时提示 “Connection refused”A: 远程主机的 Finger 服务未运行或被防火墙拦截。排查步骤# 1. 检查网络连通性pingexample.com# 2. 检查 Finger 端口79是否开放nc-zvexample.com79# 或telnet example.com79# 3. 如果端口关闭说明远程主机未运行 Finger 服务echo⚠️ 远程主机未运行 Finger 服务端口 79 未开放安全提示现代系统通常禁用 Finger 服务端口 79因为它会暴露用户信息安全风险。Q3: 如何启用 Finger 服务服务器端A: 在允许 Finger 查询的主机上安装并启动服务# Debian/Ubuntusudoapt-getinstallfingerdsudosystemctlenablefingerdsudosystemctl start fingerd# RHEL/CentOSsudoyuminstallfinger-serversudosystemctlenablefingersudosystemctl start finger验证服务运行# 检查端口 79 是否监听sudoss-tlnp|grep:79# 或sudonetstat-tlnp|grep:79Q4:pinky和finger的输出有什么区别A: 对比示例# pinky 输出简洁pinky-bexample.com# Login TTY FROM IDLE Host# alice tty1 192.168.1.100 2m workstation# finger 输出详细finger example.com# Login Name TTY Idle Login Time Office Phone# alice Alice Sm tty1 2m Jun 12 09:30 /off/301 1-555关键区别pinky输出字段少适合脚本解析finger输出字段多包含办公室、电话等适合人工阅读 自动化脚本脚本1定期检查远程主机用户活动#!/bin/bash# 定期检查远程主机用户活动如有新用户登录则告警HOSTexample.comLOG_FILE/var/log/pinky_monitor.logINTERVAL300# 5分钟检查一次whiletrue;doTIMESTAMP$(date%Y-%m-%d %H:%M:%S)USERS$(pinky-s$HOST2/dev/null|tail-n2)if[-n$USERS];thenecho[$TIMESTAMP]$HOST用户活动$LOG_FILEecho$USERS$LOG_FILEecho---$LOG_FILEelseecho[$TIMESTAMP]$HOST无用户活动$LOG_FILEfisleep$INTERVALdone使用方法# 赋予执行权限chmodx pinky_monitor.sh# 后台运行nohup./pinky_monitor.sh# 查看日志tail-f/var/log/pinky_monitor.log脚本2HTML 格式输出适合邮件报告#!/bin/bash# 生成 HTML 格式的用户报告HOSTexample.comHTML_FILEpinky_report.htmlcat$HTML_FILEEOF !DOCTYPE html html head meta charsetUTF-8 titlePinky 查询报告/title style body { font-family: Arial, sans-serif; margin: 20px; } table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid #ddd; padding: 8px; text-align: left; } th { background-color: #f2f2f2; } tr:hover { background-color: #f5f5f5; } /style /head body h1️ 远程主机用户报告/h1 p生成时间kbd$(date)/kbd/p h2主机kbd$HOST/kbd/h2 table trth用户名/thth终端/thth来源 IP/thth闲置时间/thth主机名/th/tr EOF# 解析 pinky 输出并转换为 HTML 表格行pinky-b$HOST2/dev/null|tail-n2|whileread-rline;doLOGIN$(echo$line|awk{print $1})TTY$(echo$line|awk{print $2})FROM$(echo$line|awk{print $3})IDLE$(echo$line|awk{print $4})HOSTNAME$(echo$line|awk{print $5})cat$HTML_FILEROW_EOF trtd$LOGIN/tdtd$TTY/tdtd$FROM/tdtd$IDLE/tdtd$HOSTNAME/td/tr ROW_EOFdonecat$HTML_FILEEOF /table /body /html EOFecho✅ HTML 报告已生成$HTML_FILE输出示例!DOCTYPEhtmlhtmlheadtitlePinky 查询报告/title/headbodyh1️ 远程主机用户报告/h1p生成时间kbdThu Jun 12 10:00:00 CST 2026/kbd/ph2主机kbdexample.com/kbd/h2tabletrth用户名/thth终端/thth来源 IP/thth闲置时间/thth主机名/th/trtrtdalice/tdtdtty1/tdtd192.168.1.100/tdtd2m/tdtdworkstation/td/tr/table/body/html 扩展阅读Finger 协议RFC 1288端口79TCP用途查询远程主机的用户信息安全风险暴露用户名、登录时间等敏感信息现代系统通常禁用相关命令命令说明用法finger功能完整的 Finger 客户端finger hostwho显示本地登录用户whow显示本地用户 正在运行的命令wusers显示本地用户名列表userslast显示登录历史last 总结要点说明命令类型远程用户查询工具Finger 协议输出特点简洁适合脚本解析典型用法pinky host或pinky userhost适用场景查询允许 Finger 协议的主机注意事项现代系统通常禁用 Finger 服务端口 79快速参考卡片# 快速命令pinkyhost# 查询主机上的所有用户pinky userhost# 查询指定用户pinky-lhost# 长格式输出pinky-shost# 短格式输出适合脚本# 检查 Finger 服务是否运行nc-zvhost79# 检查端口 79telnethost79# 连接 Finger 服务# 解析输出脚本用pinky-shost|tail-n2|awk{print $1}# 仅提取用户名 注意事项Finger 服务通常不启用现代 Linux 发行版默认不安装Finger 服务器需要手动安装fingerd或in.fingerd。防火墙可能拦截即使安装了 Finger 服务防火墙也可能拦截端口 79。安全风险Finger 协议会暴露用户信息建议在内部网络使用外部网络禁用。替代方案如果需要查询用户信息可以考虑使用SSHwho/w命令更安全。️ 标签Linux运维网络工具用户管理Finger协议 最后更新日期2026-06-13适用系统GNU/Linux (所有发行版)命令版本GNU coreutils 9.x上一篇ping - 网络连通性测试下一篇pipe - 管道命令待发布
Linux命令-pinky(轻量级finger查询工具)
Linux命令-pinky轻量级finger查询工具快速参考pinky是 GNU coreutils 的一部分用于查询远程主机上的用户信息finger 协议。它是finger命令的简化版本输出更简洁适合脚本调用。 目录命令简介语法格式常用选项输出字段说明实战示例与其他命令对比常见问题自动化脚本 命令简介pinky是一个轻量级 finger 查询工具用于查询远程主机上的用户信息。它通过Finger 协议RFC 1288与远程主机通信获取用户登录状态、空闲时间等信息。 适用场景场景说明远程用户查询查询远程主机上有哪些用户在线脚本集成输出格式简单适合脚本解析快速检查比finger命令更轻量启动更快⚠️注意现代系统中 Finger 协议通常被禁用安全风险pinky主要用于查询允许 Finger 协议的主机。 语法格式pinky[选项][user]host参数说明参数说明user可选指定查询的用户名不指定则查询所有用户host必填远程主机地址IP 或域名基本用法# 查询远程主机上的所有用户pinky example.com# 查询指定用户pinky aliceexample.com⚙️ 常用选项选项说明-l, --long使用长格式输出更多字段-b, --brief使用简短格式输出默认-s, --short使用极简格式输出-h, --help显示帮助信息-V, --version显示版本信息输出格式对比格式选项输出字段适用场景-b(默认)用户名、终端、登录时间、闲置时间快速查看-l(长格式)包含办公室、电话等扩展信息详细信息查询-s(短格式)仅用户名和终端脚本解析 输出字段说明默认输出brief 格式Login TTY FROM IDLE Host alice tty1 192.168.1.100 2m workstation bob tty2 10.0.0.5 10m laptop字段说明Login用户名TTY终端类型tty1,pts/0等FROM来源 IP 地址或主机名IDLE闲置时间2m 2分钟1h 1小时Host来源主机名如果有反向 DNS长格式输出-l 选项Login name: alice In real life: Alice Smith Office: /office/301 Home phone: 1-555-1234 Directory: /home/alice Shell: /bin/bash Last login: Thu Jun 12 09:30:00 2026 on tty1 from workstation New mail received: Thu Jun 12 08:00:00 2026 实战示例1️⃣ 基本查询# 查询远程主机上的所有用户pinky example.com# 查询指定用户pinky aliceexample.com输出示例Login TTY FROM IDLE Host alice tty1 192.168.1.100 2m workstation2️⃣ 使用长格式查询# 获取详细信息pinky-lexample.com# 查询指定用户长格式pinky-laliceexample.com输出示例Login name: alice In real life: Alice Smith Office: /office/301 Home phone: 1-555-1234 Directory: /home/alice Shell: /bin/bash Last login: Thu Jun 12 09:30:00 2026 on tty1 from workstation3️⃣ 脚本集成解析输出#!/bin/bash# 查询远程主机检查是否有用户在线HOSTexample.comUSERS$(pinky-s$HOST|tail-n2|wc-l)if[$USERS-gt0];thenecho✅$HOST上有$USERS个用户在线pinky-b$HOSTelseecho⚠️$HOST上没有用户在线或无法查询fi关键点使用-s(short) 格式输出更简洁适合脚本解析tail -n 2跳过标题行wc -l统计用户数量4️⃣ 批量查询多个主机#!/bin/bash# 批量查询多个主机的用户状态HOSTS(host1.example.comhost2.example.comhost3.example.com)forhostin${HOSTS[]};doecho 查询$host...ifping-c1$host/dev/null;thenecho✅$host可达用户列表pinky-b$host2/dev/null||echo Finger 协议被禁用elseecho❌$host不可达fiecho---done5️⃣ 结合finger命令对比# 使用 pinky 查询轻量级pinky example.com# 使用 finger 查询功能更全finger example.com# 对比输出格式echo pinky (brief) pinky-bexample.comecho finger finger example.com区别pinky输出简洁适合脚本finger输出详细支持更多选项如-m,-s,-l 与其他命令对比命令协议输出详细度适用场景pinkyFinger⭐⭐脚本调用、快速查询fingerFinger⭐⭐⭐⭐交互式查询、详细信息who本地⭐⭐查询本地登录用户w本地⭐⭐⭐查询本地用户 正在执行的命令users本地⭐仅显示用户名列表典型对比示例# 查询本地用户who 命令who# 输出alice tty1 2026-06-12 09:30# bob tty2 2026-06-12 09:35# 查询远程用户pinky 命令pinky example.com# 输出Login TTY FROM IDLE Host# alice tty1 192.168.1.100 2m workstation提示pinky和finger查询远程主机而who/w/users查询本地系统。❓ 常见问题Q1:pinky命令找不到A: 安装coreutils包# Debian/Ubuntusudoapt-getinstallcoreutils# RHEL/CentOSsudoyuminstallcoreutils# Arch Linuxsudopacman-ScoreutilsQ2: 查询远程主机时提示 “Connection refused”A: 远程主机的 Finger 服务未运行或被防火墙拦截。排查步骤# 1. 检查网络连通性pingexample.com# 2. 检查 Finger 端口79是否开放nc-zvexample.com79# 或telnet example.com79# 3. 如果端口关闭说明远程主机未运行 Finger 服务echo⚠️ 远程主机未运行 Finger 服务端口 79 未开放安全提示现代系统通常禁用 Finger 服务端口 79因为它会暴露用户信息安全风险。Q3: 如何启用 Finger 服务服务器端A: 在允许 Finger 查询的主机上安装并启动服务# Debian/Ubuntusudoapt-getinstallfingerdsudosystemctlenablefingerdsudosystemctl start fingerd# RHEL/CentOSsudoyuminstallfinger-serversudosystemctlenablefingersudosystemctl start finger验证服务运行# 检查端口 79 是否监听sudoss-tlnp|grep:79# 或sudonetstat-tlnp|grep:79Q4:pinky和finger的输出有什么区别A: 对比示例# pinky 输出简洁pinky-bexample.com# Login TTY FROM IDLE Host# alice tty1 192.168.1.100 2m workstation# finger 输出详细finger example.com# Login Name TTY Idle Login Time Office Phone# alice Alice Sm tty1 2m Jun 12 09:30 /off/301 1-555关键区别pinky输出字段少适合脚本解析finger输出字段多包含办公室、电话等适合人工阅读 自动化脚本脚本1定期检查远程主机用户活动#!/bin/bash# 定期检查远程主机用户活动如有新用户登录则告警HOSTexample.comLOG_FILE/var/log/pinky_monitor.logINTERVAL300# 5分钟检查一次whiletrue;doTIMESTAMP$(date%Y-%m-%d %H:%M:%S)USERS$(pinky-s$HOST2/dev/null|tail-n2)if[-n$USERS];thenecho[$TIMESTAMP]$HOST用户活动$LOG_FILEecho$USERS$LOG_FILEecho---$LOG_FILEelseecho[$TIMESTAMP]$HOST无用户活动$LOG_FILEfisleep$INTERVALdone使用方法# 赋予执行权限chmodx pinky_monitor.sh# 后台运行nohup./pinky_monitor.sh# 查看日志tail-f/var/log/pinky_monitor.log脚本2HTML 格式输出适合邮件报告#!/bin/bash# 生成 HTML 格式的用户报告HOSTexample.comHTML_FILEpinky_report.htmlcat$HTML_FILEEOF !DOCTYPE html html head meta charsetUTF-8 titlePinky 查询报告/title style body { font-family: Arial, sans-serif; margin: 20px; } table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid #ddd; padding: 8px; text-align: left; } th { background-color: #f2f2f2; } tr:hover { background-color: #f5f5f5; } /style /head body h1️ 远程主机用户报告/h1 p生成时间kbd$(date)/kbd/p h2主机kbd$HOST/kbd/h2 table trth用户名/thth终端/thth来源 IP/thth闲置时间/thth主机名/th/tr EOF# 解析 pinky 输出并转换为 HTML 表格行pinky-b$HOST2/dev/null|tail-n2|whileread-rline;doLOGIN$(echo$line|awk{print $1})TTY$(echo$line|awk{print $2})FROM$(echo$line|awk{print $3})IDLE$(echo$line|awk{print $4})HOSTNAME$(echo$line|awk{print $5})cat$HTML_FILEROW_EOF trtd$LOGIN/tdtd$TTY/tdtd$FROM/tdtd$IDLE/tdtd$HOSTNAME/td/tr ROW_EOFdonecat$HTML_FILEEOF /table /body /html EOFecho✅ HTML 报告已生成$HTML_FILE输出示例!DOCTYPEhtmlhtmlheadtitlePinky 查询报告/title/headbodyh1️ 远程主机用户报告/h1p生成时间kbdThu Jun 12 10:00:00 CST 2026/kbd/ph2主机kbdexample.com/kbd/h2tabletrth用户名/thth终端/thth来源 IP/thth闲置时间/thth主机名/th/trtrtdalice/tdtdtty1/tdtd192.168.1.100/tdtd2m/tdtdworkstation/td/tr/table/body/html 扩展阅读Finger 协议RFC 1288端口79TCP用途查询远程主机的用户信息安全风险暴露用户名、登录时间等敏感信息现代系统通常禁用相关命令命令说明用法finger功能完整的 Finger 客户端finger hostwho显示本地登录用户whow显示本地用户 正在运行的命令wusers显示本地用户名列表userslast显示登录历史last 总结要点说明命令类型远程用户查询工具Finger 协议输出特点简洁适合脚本解析典型用法pinky host或pinky userhost适用场景查询允许 Finger 协议的主机注意事项现代系统通常禁用 Finger 服务端口 79快速参考卡片# 快速命令pinkyhost# 查询主机上的所有用户pinky userhost# 查询指定用户pinky-lhost# 长格式输出pinky-shost# 短格式输出适合脚本# 检查 Finger 服务是否运行nc-zvhost79# 检查端口 79telnethost79# 连接 Finger 服务# 解析输出脚本用pinky-shost|tail-n2|awk{print $1}# 仅提取用户名 注意事项Finger 服务通常不启用现代 Linux 发行版默认不安装Finger 服务器需要手动安装fingerd或in.fingerd。防火墙可能拦截即使安装了 Finger 服务防火墙也可能拦截端口 79。安全风险Finger 协议会暴露用户信息建议在内部网络使用外部网络禁用。替代方案如果需要查询用户信息可以考虑使用SSHwho/w命令更安全。️ 标签Linux运维网络工具用户管理Finger协议 最后更新日期2026-06-13适用系统GNU/Linux (所有发行版)命令版本GNU coreutils 9.x上一篇ping - 网络连通性测试下一篇pipe - 管道命令待发布