getent
घर निर्देशिकाओं की गणना करने के लिए उपयोग करें ।
getent passwd |
cut -d : -f 6 |
sed 's:$:/.bash_history:' |
xargs -d '\n' grep -s -H -e "$pattern"
यदि आपके घर निर्देशिका एक प्रसिद्ध स्थान पर हैं, तो यह उतना ही सरल हो सकता है
grep -e "$pattern" /home/*/.bash_history
बेशक, अगर कोई उपयोगकर्ता एक अलग शेल या एक अलग मूल्य का उपयोग करता है HISTFILE
, तो यह आपको ज्यादा नहीं बताएगा। और न ही यह आपको उन कमांड्स के बारे में बताएगा जो शेल के माध्यम से निष्पादित नहीं हुए थे, या उपनामों और कार्यों के बारे में और अब हटाए गए बाहरी कमांड जो उपयोगकर्ता में कुछ उपयोगकर्ता निर्देशिका में थे $PATH
। यदि आप जानना चाहते हैं कि उपयोगकर्ता क्या कमांड चला रहे हैं, तो आपको प्रक्रिया लेखांकन या कुछ कट्टर ऑडिटिंग सिस्टम की आवश्यकता है; मेरे कंप्यूटर पर निगरानी गतिविधि देखें । , यह जांचने के लिए कि यह प्रक्रिया पूरी होने के बाद कितनी देर तक चलती है? ।