คำสั่งประวัติข้ามเซสชัน PuTTy หลายรายการใน SunOS 5.10


1

ฉันมีเซสชัน PuTTy หลายเซสชันเปิดให้เซิร์ฟเวอร์ SunOS 5.10 ของฉันและฉันกำลังใช้ ksh และบางครั้งประวัติคำสั่งจะถูกใช้ร่วมกันระหว่างเซสชันที่แตกต่างกันและบางครั้งไม่ใช่ ฉันไม่สามารถหาสิ่งที่กำหนดว่ามันเป็นหรือไม่ได้รับการแบ่งปัน ด้วยการแบ่งปันสิ่งที่ฉันหมายถึงคือคำสั่งที่เรียกใช้ในเซสชันหนึ่งจะถูกมองว่าคำสั่งก่อนหน้านี้ทำงานในเซสชันอื่น

ฉันไม่ต้องการแชร์มันมีการตั้งค่าคอนฟิกไหม

คำตอบ:


2

เชลล์ Unix ส่วนใหญ่อ่านประวัติเก่าจากไฟล์หนึ่งครั้ง - เมื่อเชลล์เริ่ม - และเมื่อคุณปิดเชลล์นั้นประวัติจะถูกเขียนลงในไฟล์อีกครั้ง

โดยปกติแล้วเนื้อหาเก่า ๆ จะถูกเขียนทับดังนั้นถ้าคุณทำอะไรเช่น ...

  1. เข้าสู่เซสชัน A และ B
    • A และ B อ่านเนื้อหาเดียวกันของ ~/.history
  2. รันคำสั่งtestใน A
    • A เป็นการเพิ่มtestลงในประวัติความจำ
    • B ไม่รู้เกี่ยวกับคำสั่ง
  3. ออกจากระบบจาก
    • เขียนทับ~/.historyด้วยประวัติซึ่งมีtest
  4. เข้าสู่ระบบเพื่อเซสชั่น C
    • C อ่านเนื้อหาของ~/.historyด้วยtest
  5. ออกจากระบบ B
    • B เขียนทับ~/.historyด้วยประวัติซึ่งไม่มีtest
  6. ออกจากระบบ C
    • C เขียนทับ~/.historyด้วยประวัติซึ่งมีtest

จากนั้นtestจะถูกบันทึกลงในไฟล์ประวัติหลังจากขั้นตอน # 3 แต่ขั้นตอน # 5 จะยกเลิกและขั้นตอน # 6 จะเพิ่มอีกครั้ง ...

เชลล์บางตัวมีตัวเลือก "ผนวกประวัติ" ที่จะหลีกเลี่ยงสิ่งนี้ (เช่นshopt -s histappendใน Bash)

หากคุณต้องการมีประวัติที่แยกจากกันอย่างสมบูรณ์เป็นวิธีที่ง่ายคือเพียง symlink /dev/nullแฟ้มประวัติของคุณไป

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.