ดำเนินการคำสั่งทุกครั้งที่เทอร์มินัลเปิดอยู่


19

ฉันใช้ Ubuntu 13.04 และฉันต้องการกำหนดค่าเทอร์มินัลของฉันดังนั้นทุกครั้งที่มีการเปิดแท็บ / หน้าต่างใหม่มันรันคำสั่งต่อไปนี้โดยอัตโนมัติและทันที

 /bin/bash --login

ฉันจะบรรลุสิ่งนี้ได้อย่างไร บน OSX ด้วย iTerm 2 มีตัวเลือกให้เรียกใช้คำสั่งเมื่อเริ่มต้น ฉันเดาว่าที่นี่ฉันควรจะได้รับสิ่งนี้ผ่าน dotfile บางชนิด ...


ทำไมคุณถึงต้องการทำเช่นนี้? เมื่อคุณเปิดเทอร์มินัลใหม่คำสั่งนี้จะถูกดำเนินการแล้ว
Spack

ไม่มันไม่ใช่. ฉันต้องการสิ่งนี้เพราะมีข้อบกพร่องในสภาพแวดล้อมการพัฒนาบางอย่างที่ฉันใช้ --loginธงเป็นสิ่งสำคัญ
ถ้า __name__ เป็น None

คำตอบ:


21

~/.bashrcเพิ่มคำสั่งเพื่อคุณ เทคนิคคุณควรจะสามารถที่จะเพิ่ม~/.profileเป็นอย่างดีจากman bash, INVOCATIONเอกสาร:

หากมีการเรียกใช้ bash ด้วยชื่อระบบshจะพยายามเลียนแบบพฤติกรรมการเริ่มต้นของเวอร์ชันประวัติshที่ใกล้เคียงที่สุดเท่าที่จะเป็นไปได้ในขณะที่สอดคล้องกับมาตรฐาน POSIX เช่นกัน เมื่อเรียกใช้เป็นเชลล์ล็อกอินแบบโต้ตอบหรือเชลล์ที่ไม่มีการโต้ตอบพร้อมกับ--loginตัวเลือกอันดับแรกจะพยายามอ่านและดำเนินการคำสั่งจาก /etc/profileและ~/.profileตามลำดับนั้น

นอกจากนี้:

พยายามทุบตีเพื่อตรวจสอบเมื่อมันจะถูกเรียกใช้ด้วยการป้อนข้อมูลมาตรฐานการเชื่อมต่อกับเชื่อมต่อเครือข่ายเช่นเมื่อดำเนินการโดยภูตระยะไกลเปลือกมักหรือภูตเปลือกที่เชื่อถือได้rshd sshdหากทุบตีกำหนดว่ามันกำลังทำงานในลักษณะนี้มันจะอ่านและดำเนินการคำสั่งจาก~/.bashrcและ~/.bashrcถ้าไฟล์เหล่านี้มีอยู่และสามารถอ่านได้

ดังนั้นที่นี้หมายถึงว่าถ้าคุณเข้าสู่ระบบในประเทศที่คุณควรจะตกลงใช้~/.profile; แต่ถ้าคุณใช้ระบบคุณจะต้องใช้~/.bashrcมัน ~/.bashrcยังใช้เมื่อล็อกอินในเครื่อง ดังนั้นมันจึงกลายเป็นรูปแบบที่จะใช้สิ่งนั้น


3

ลอง:

  • ใน terminal, แก้ไข> การตั้งค่า> แท็บกรรมสิทธิ์และคำสั่ง> เรียกใช้คำสั่งที่กำหนดเองจากเปลือกของฉัน

ป้อนคำอธิบายรูปภาพที่นี่

หรือ

  • gnome-terminal --tab -e "your command" เพื่อเปิดแท็บใหม่

ข้อมูลเพิ่มเติม: ManPage Gnome-terminal


2
ที่จริงเพียงตรวจสอบrun command as login shellแก้ไขปัญหาของฉัน
ถ้า __name__ คือไม่มี
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.