ฉันจะเริ่มต้น gnome-terminal ที่ไดเรกทอรีเฉพาะได้อย่างไร


38

ฉันได้ลองแล้ว

gnome-terminal -x 'cd /path/to/dir'

และ

gnome-terminal -e 'cd /path/to/dir'

แต่ทั้งคู่ให้ข้อผิดพลาดแก่ฉันเมื่อเปิดเทอร์มินัลใหม่ ฉันจะทำให้เทอร์มินัลใหม่เริ่มต้นในไดเรกทอรีเฉพาะได้อย่างไร

คำตอบ:


48

ใช้

gnome-terminal --working-directory=/path/to/dir

1
อยากรู้อยากเห็นสิ่งนี้ดูเหมือนจะไม่ทำงานสำหรับฉันใน gnome-terminal 3.18.3 (Ubuntu 16.04) อาร์กิวเมนต์ได้รับการยอมรับ แต่ Bash ในเทอร์มินัลใหม่จะเปิดขึ้นใน $ HOME
Jonathan Hartley

1
สิ่งนี้ไม่ทำงานใน Ubuntu 16.04 อีกต่อไปเนื่องจากข้อผิดพลาด: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154โปรดไปที่นั่นแล้วคลิก 'สิ่งนี้มีผลกับฉันเช่นกัน' หากคุณต้องการแก้ไข .
Jonathan Hartley

ในความคิดเห็นต่อข้อผิดพลาดการแก้ปัญหาจะถูกระบุเพื่อยกเลิกการทำเครื่องหมาย "เรียกใช้คำสั่งที่กำหนดเองแทนเปลือกของฉัน" สิ่งนี้ใช้ได้สำหรับฉัน แน่นอนว่ามันจะไม่ทำงานหากคำสั่งที่คุณต้องการเรียกใช้นั้นแตกต่างจากเชลล์ chshเปลือกของคุณสามารถเปลี่ยนแปลงได้ด้วย
โอเว่น

ดีกว่าด้วย "" gnome-terminal --working-directory = "/ path / to / dir"
Nicolas

1
@JonathanHartley ข้อผิดพลาดนี้ได้รับการแก้ไขสำหรับ Ubuntu 16.04.3 LTS ที่ทำงานภายใต้เคอร์เนล 4.14.34-generic
WinEunuuchs2Unix

18

เพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของคุณ~/.bashrc:

cd ~/public_html

วิธีนี้จะปิดการใช้งาน "open in terminal" จากเมนูคลิกขวาในไฟล์เบราว์เซอร์ มันควรจะเปิดไดเรกทอรีปัจจุบันในอาคารผู้โดยสารแห่งใหม่ แต่คำสั่งนี้จะนำคุณไปยังไดเรกทอรี ~ / public_html เสมอ
HD189733b

เพื่อเป็นการหลีกเลี่ยงปัญหาที่cd -ควรนำคุณไปยังไดเรกทอรีการทำงานก่อนหน้าเพื่อให้คุณสามารถใช้ "open in terminal" bashrc ของคุณจะส่งต่อคุณไปยัง dir ที่เลือกทันทีจากนั้นcd -จะนำคุณกลับไปยัง dir ที่คุณต้องการเปิด ควรทำงาน!
pbhj

5
sudo apt-get install nautilus-open-terminal 

รีสตาร์ทหอยโข่งแล้วคลิกขวาที่ไดเรกทอรีใด ๆ และเลือก "เปิดในเทอร์มินัล"


4

คุณสามารถ:

  1. แก้ไข / สร้างไฟล์~/.bashrcและเพิ่มบรรทัดนี้ในตอนท้ายของไฟล์:

    alias cdx='cd /path/to/myfolder'
    

    บันทึกการเปลี่ยนแปลงและออกจากระบบ / เข้าสู่ระบบ เมื่อคุณรันคำสั่ง "cdx" มันจะนำคุณไปยังโฟลเดอร์ที่ระบุ

  2. คุณสามารถสร้างทางลัด / ลิงค์ที่จะรันคำสั่งนี้:

    • ถ้าคุณใช้ gnome-terminal (Ubuntu):

      gnome-terminal --working-directory="/full/path/to/myfolder"
      
    • หากคุณใช้ lxterminal (Lubuntu):

      lxterminal --working-directory="/full/path/to/myfolder"
      

--working-directory ไม่ทำงานใน Ubuntu 16.04 อีกต่อไปเนื่องจากข้อผิดพลาด: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154โปรดไปที่นั่นแล้วคลิก 'สิ่งนี้จะส่งผลต่อฉันเช่นกัน' ถ้าคุณ ' d ชอบแก้ไข
Jonathan Hartley

1
@JonathanHartley ข้อผิดพลาดนี้ได้รับการแก้ไขสำหรับ Ubuntu 16.04.3 LTS ที่ทำงานภายใต้ Kernel 4.14.34-generic
WinEunuuchs2Unix

2

คุณสามารถเพิ่ม nautilus-script แบบนั้นได้

สร้างไฟล์ว่างที่ชื่อว่า "Open Terminal Here" ใน

~/.local/share/nautilus/scripts/ # for Ubuntu 13.04 or above
~/.gnome2/nautilus-scripts/      # for Ubuntu 12.10 and below

ไดเรกทอรี

เปิดและเขียนบรรทัดเหล่านี้ภายใน

#!/bin/bash
gnome-terminal

ทำให้สามารถเรียกใช้งานได้และคลิกขวาที่ไดเรกทอรีใด ๆ ใน nautilus และเลือก "Scripts> Open Terminal Here" จากเมนู


1

เปิด "~ / .bashrc" เลื่อนไปด้านล่างและเพิ่มคำสั่งเปลี่ยนไดเรกทอรีตัวอย่าง: cd ~ / myfolder

จากนั้นบันทึกและออก เครื่องหมาย "~" จะนำคุณไปยังโฟลเดอร์บ้านของคุณ (/ home / loginname)

ทุกครั้งที่คุณเรียกใช้เทอร์มินัลเครื่องจะอ่านไฟล์. bashrc เพื่อให้คุณสามารถใส่พา ธ การค้นหา ฯลฯ ได้


0
gnome-terminal --working-directory=/path/to/dir

เช่น

root45 ตอบกลับ

หรือคุณสามารถทำสิ่งนี้ได้เช่นกัน

ถ้าคุณเริ่มต้น gnome-ขั้วเช่น " gnome-terminal --working-directory=myfolder" ~/myfolderมันจะเริ่มต้นด้วยไดเรกทอรีการทำงานที่ เพื่อให้คุณสามารถเพิ่มรายการใหม่ลงในเมนูของคุณเพื่อใช้คำสั่งนั้นแทนรายการอื่น


สิ่งนี้ไม่เป็นความจริงตลอดเวลาหากสภาพแวดล้อมไม่ได้ถูกตั้งค่าให้เปิดเทอร์มินัลในผู้ใช้~สิ่งนี้จะไม่มีผลตามที่ต้องการคุณจะต้องใช้เส้นทางแบบเต็มไปยังโฟลเดอร์ มันถูกต้องในบริบทปัจจุบัน แต่ไม่ตลอดเวลา
Bruno Pereira

มาจากที่นี่ (น่ายินดีที่จะให้เครดิต): stackoverflow.com/questions/844677/…
Volker Siegel

สิ่งนี้ไม่ทำงานใน Ubuntu 16.04 อีกต่อไปเนื่องจากข้อผิดพลาด: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154โปรดไปที่นั่นแล้วคลิก 'สิ่งนี้มีผลกับฉันเช่นกัน' หากคุณต้องการแก้ไข .
Jonathan Hartley

0

งานนี้:

gnome-terminal --tab --title="your title" -- bash -c 'cd /path/to/dir && your_code' &

ความคิดเห็นไม่กี่:

  • รุ่น gnome-terminal ของฉันคือ:
$ gnome-terminal --version
# GNOME Terminal 3.28.1 using VTE 0.52.1 +GNUTLS -PCRE2
  • ทุกอย่างหลังจากทุบตี -c จะต้องห่อด้วยคำพูดเดียว
  • คุณต้องใช้ "-c" สำหรับตัวเลือก bash
  • ได้ใช้ "-" แม้ว่า doc บอกว่าจะใช้ "-x" หรือ "-e" (สิ่งเหล่านี้ถูกคัดค้าน
  • "-tab" สร้างแท็บในหน้าต่างเทอร์มินัลปัจจุบัน
  • ใช้ "- หน้าต่าง" เพื่อสร้างหน้าต่างเทอร์มินัลใหม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.