Geçerli dizini terminalden dosya tarayıcısına mı açıyorsunuz?


15

Geçerli dizinim, ana dizinimdeki birden çok alt klasör katmanının derinliklerine gömüldü. Bu dizini gui tabanlı bir dosya tarayıcısında açmak istersem, klasörden sonra klasöre ulaşmak için klasörü çift tıklatmam gerekir. Bu çok zaman alıcı. Öte yandan, çok az tuş vuruşuyla ve sekme düğmesine birkaç kez basıldığında, bir terminal aracılığıyla çok kolay erişilebilir.

Geçerli dizini bir terminalde bir dosya tarayıcısına açmanın bir yolu olup olmadığını bilmek istiyorum. Bunu yapmak için komut nedir?

Referans için, bir ubuntu sistemim var, ancak komutların linux'un çeşitli dağıtımları arasında ne olduğunu bilmek istiyorum.


2
Bu gerçekten hangi işletim sistemini ve GUI ortamını kullandığınıza bağlıdır. Örneğin, bir OS X sisteminde, başımın üstünden open /path/to/some/directoryo dizin için bir Bulucu penceresi açılacaktır. Windows'da, explorer.exe KDE veya GNOME veya LXDE'de bir miktar çağrı var, muhtemelen her ortama özgü kullanılabilecek büyüler var. Kısacası, özel kullanım durumunuz için daha fazla ayrıntıya ihtiyaç vardır.
DopeGhoti

Bu, kullandığınız "dosya gezgini" ne veya pencereleme sistemine bağlıdır. Referans olarak, Mac OS X'te open .geçerli dizinde bir Finder penceresi açılacaktır. Benzer bir komut sisteminizde de olabilir.
dhag

Sorunuzu, kullandığınız / kullanmak istediğiniz GUI tabanlı dosya gezgini içerecek şekilde düzenlemelisiniz.
Anthony Geoghegan

@drewbenn: Bunu farklı ortamlar için işe yarayacağı için cevap olarak gönderirim.
15:31

Yanıtlar:


27

xdg-open .

xdg-open , birçok dağıtımda (Ubuntu dahil) varsayılan olarak yüklenen xdg-utils paketinin bir parçasıdır . Masaüstü ortamınızdaki dosya türü için varsayılan işleyiciyi çağırarak birden çok masaüstü ortamında çalışmak üzere tasarlanmıştır.

Bir dizin, dosya veya URL iletebilirsiniz ve bu parametre için uygun programı açar. Örneğin, KDE sistemimde:

  • xdg-open . geçerli dizini Dolphin dosya yöneticisinde açar
  • xdg-open foo.txt foo.txt dosyasını emacsclient'te açar. Bu, .txt dosyaları için varsayılan işleyici olarak yapılandırdım
  • xdg-open http://www.google.com/ google.com'u varsayılan web tarayıcımda açar

Uygulama ayrı bir pencere olarak açılır ve yeni GUI pencerenizi etkilemeden terminalinizde bir komut istemi alırsınız ve başka komutlar verebilir veya terminalinizi kapatabilirsiniz.

Genellikle bir grup hata mesajı yazdırılır stderr, ancak onları görmezden gelirim.

Düzenle:
Bağımsız değişkenlerin eklenmesi xdg-open . >/dev/null 2>&1hataları ve çıktıyı yönlendirir. Bu çağrı terminalinizi engellemeyecek. Bunu benzer bir takma adla bağlamak filemanager='xdg-open . >/dev/null 2>&1'kullanışlı olabilir.


Altın. Teşekkür ederim
Adil Saju

9

Hemen hemen tüm GUI uygulamaları (X pencere sistemlerinde), bu GUI içindeki bir terminal penceresinden açılabilir. Herhangi bir GUI uygulamasını açmak için, kabuk istemine yürütülebilir dosyanın adını yazın. Çoğu dosya tarayıcısı bir dizini komut satırı bağımsız değişkeni olarak alır, bu nedenle genellikle .parametre olarak geçmeniz gerekir .

İşte bazı popüler sistemlere bazı örnekler, çoğu X tabanlı sistem benzer şekilde çalışır.

Gnome'da, nautilus(varsayılan dosya tarayıcısı) doğrudan çalıştırabilir veya Gnome 2'de, gnome-openyapılandırılmış Gnome dosya işleyici uygulamasıyla herhangi bir dosyayı (dizinler dahil) açmak için kullanabilirsiniz :

$ nautilus .

veya

$ gnome-open .

On KDE , iki popüler dosya tarayıcılar vardır, ben benzer bir komut farkında değilim gnome-opengerçi, gnome-openKDE içinde çalıştırılabilir, ancak varsayılan olarak bu Gnome uygulamaları açılır.

$ dolphin .

veya

$ konquerer .

On OS X , yorumlar, benzer bir komut satırı programında belirtildiği gibi, openkullanılabilir.

$ open .

Sisteminizin dosya tarayıcısının yürütülebilir adını bilmiyorsanız ne olur?

Gnome 2'de gnome-open .iseniz, OS X'te ise kullanın open .. Bunların her biri GUI ortamınız için yapılandırılmış dosya tarayıcısını yürütür.

Eğer pencere sisteminde böyle bir emir komuta bilmiyorsanız, burada sistemlerde Öğrenmenin tek yolu psseçenekleri anlayan komuta -u USERve -o FORMAT:

  1. Terminal pencerenize şunu yazın ps -u$USER -o comm > /tmp/$$A
  2. GUI'nizde dosya tarayıcısını başlatın.
  3. Terminal pencerenize geri yazın ps -u $USER -o comm > /tmp/$$B( BSoneki olduğuna dikkat edin , bu adım 1'den farklı bir dosyadır).
  4. Ayrıca terminalde yazın diff /tmp/$$[AB].

Dosya tarayıcınızın adını görüntülemelidir. Çağrılar arasındaki süre boyunca kullanıcı kimliğiniz altında başka bir program başlamışsa, birden fazla ad görebilirsiniz ps.

Örneğin:

$ ps -u $USER -o comm > /tmp/$$A
$ # open file browser in gui
$ ps -u $USER -o comm > /tmp/$$B
$ diff /tmp/$$[AB]
95a96
> nautilus

Sisteminizin hangi dosya tarayıcısına sahip olduğunu bilmiyorsanız, komut satırından nasıl öğrenebilirsiniz?
Paul

@ Paul, lütfen güncellenmiş cevaba bakınız. Teşekkürler.
RobertL

2

Ubuntu, nautilushatırladığım kadarıyla varsayılan dosya tarayıcısı olarak kullanıyor . Bu nedenle, terminalden belirli bir klasörü açmak için aşağıdakine benzer bir şey yazabilirsiniz:

nautilus /path/to/your/dir

veya

cd /path/to/your/dir && nautilus .

nautiluskendisini aradığı terminalden otomatik olarak ayırır, ancak başka bir dosya tarayıcısı kullandığınızı ve dosya tarayıcınızı çağırdığınız terminali kapatmak istediğinizi varsayalım nohup. Kullanıyorsanız, diyelim ki thunar(başka bir dosya tarayıcısı), aşağıdakileri yazabilirsiniz:

nohup thunar /path/to/your/dir & exit

-1

Basitçe kullanın gio open

Kullan -

gio open .
gio open example/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.