Dosyaları komut satırından panoya kopyalama


18

Bir GUI dosya yöneticisinde birkaç dosya seçmek mümkündür, Ctrl-C tuşuna basın (sözde dosyalar hakkında bilgi panoya kopyalanır), daha sonra başka bir klasöre gidin ve Ctrl-V tuşuna basın. dizin.

Bir deneme olarak, dosyaları dosya yöneticisine kopyaladıktan sonra, bir metin düzenleyicisine geçmek mümkündür - Ctrl-V tuşlarına basıldığında mutlak dosya adları listesi yapıştırılır. Ters işlem (bir metin düzenleyicisinden dosyaların listesini kopyalayıp bir dosya yöneticisine yapıştırma) çalışmaz, bu da farklı hedef atomlardan kaynaklanmaktadır.

Alıştırmanın amacı bazı dosyaları komut satırından kopyalayabilmektir, örneğin

find ${PWD} -name "*.txt" | xclip <magic parameters>

daha sonra bir dosya yöneticisine geçin ve Dosya-> Yapıştır'ı kullanarak hepsini bir dizine kopyalayın.

Yani, soru şu: xclipDosya yöneticisinin seçimi bir dosya listesi olarak tanıması ve Yapıştır menü öğesini etkinleştirmesi için hangi parametrelerin (veya başka bir programın) belirtmem gerekiyor?

Alternatif olarak, X seçiminin içeriğini incelemeye ve şu anda hangi verileri içerdiğini görmeye izin verecek düşük seviyeli bir araç var mı?

Yanıtlar:


12

Evet, temel olarak CLIPBOARD seçimini şu şekilde sunmanız gerekir:

  • text/uri-list içeriği ile

    /path/to/file1
    /path/to/file2
    
  • application/x-kde-cutselectionveya x-special/gnome-copied-filesiçerikle copy\nfile://$path1\nfile://$path2\0veyacut\nfile://$path1\nfile://$path2...\0

Bununla xclipböyle bir şeyle başarabilirsiniz

find "$PWD" -name "*.pdf"| xclip -i -selection clipboard -t text/uri-list

Ayrıca umut verici görünen bu loliclip komutunu buldum , ancak değerleri alabilsem de, bunları saklayamadım ve başarıyla lolicliptarafından alınmasını sağlayamadım pcmanfm.

Ayrıca, birkaç satırda da uygulayabilmelisiniz perl-tk.


Tamam, bazı text/uri-listdeğişiklikler yapıldıktan sonra benim için çalıştı - Komut satırından bir şeyler kopyalayabilir ve dosyaları Dolphin dosya yöneticisine yapıştırabilirim. file://Komutun iyi çalışmasını sağlayan önekler bile gerektirmez find. Sorunuzu, KDE'de benim için çalışan komutu eklemek için düzenledim - kimse Gnome'da veya başka bir yerde test edebilir mi?
Sergey

Düzenleme için teşekkürler. Ya da (pcmanfm kendisini içeriyor olsa da) file://gerekli değildir gibi görünüyor pcmanfm. Bazı özel karakterler (en azından LF) olsa da URI kodlanmış olması gerekir.
Stéphane Chazelas

Evet. file:///new%0AlineBaşka bir karakter (herhangi bir kodlamada ASCII olmayan dahil) iyi görünüyor olsa da, yeni satır karakterleri içeren dosyalar için kullanmanız gerektiğini onaylayabilirim (en azından pcmanfm ile)
Stéphane Chazelas

1

neden sadece findsenin için yapmıyoruz?

find ${PWD} -name "*.txt" -exec cp {} /full/path \; && gnome-open /full/path &

EDIT: anladığım kadarıyla man xclip: dosyaları veya dizinleri değil, yalnızca metni işler.


Çoğunlukla bir deney olduğu için, "dosyaları şimdi panoya kopyala, daha sonra nereye yapıştırmak istediğinize karar verin" diye düşünmeme rağmen, bir şeyler yapmak için yararlı bir yol olabilir.
Sergey
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.