Terminaldeki dosyaları nasıl akıcı bir şekilde silebilirim?

25

Örneğin,

yapıyorum
cd Music
dir

ve al

123456789.mp3
qweerkrtrkgljdjfkdjfdkf.mp3
a.mp3
b.mp3
blabla.mp3

qweerkrtrkgljdjfkdjfdkf.mp3 ve blabla.mp3 dosyalarını en az çaba harcayarak nasıl silebilirim?

UPD : Temel fikir, dosya adlarının uzun olabileceğinden, aslında bunları yazmak istemiyorum.

    
sordu Chelios 14.11.2012 20:24

7 cevap

44

Bunu deneyin:

rm -f 2.mp3 blabla.mp3

rm , dosyaları kaldırır ve -f bunu zorlar (böylece, dosyayı silmeyi isteyip istemediğinizi soracaktır). Bu, ev dizininizde değilse, sudo 'yi ekleyin. İşte daha az yazmayı gerektirecek başka bir yol (okumak için biraz daha zor)

rm -f {2,blabla}.mp3

Bu 2.mp3 blabla.mp3 'ye genişler. Daha büyük dosya isimleri kullanmak istiyorsanız, joker karakterini ( * ) kullanabilirsiniz, bu, seçtiğiniz dosya adı ile başlayan / sonlanan tüm öğeleri döndürecektir. Örneğin:

rm -f bla*

bla ile başlayan tüm dosyaları kaldıracaktır. Bunu kullandıysanız:

rm -f *.mp3

.mp3 ile biten tüm dosyaları kaldıracaktır. Bunu kullandıysanız:

rm -f bla*.mp3

bla ile başlayan ve .mp3 ile biten tüm dosyaları kaldıracak. Olanaklar * karakteriyle neredeyse sınırsız: P

    
verilen cevap MiJyn 14.11.2012 20:26
4

Herkesin söylediği gibi, rm -f <file> gitmenin yoludur, ancak, stonedsquirrel'in dediği gibi, ilk birkaç harfi yazıp <TAB> ismini yazabilir ve dosya adını otomatik olarak doldurabilirsiniz.

    
verilen cevap Spice 14.11.2012 20:46
0

Bunu dene: % Co_de%

Dikkat: Bu harflerle başlatılan bir dosya adı varsa, bu komut bunu atar.

    
verilen cevap Hckr 14.11.2012 20:29
0

Halihazırda belirtildiği gibi @Hckr adında benzerlikler yoktur. Örneğin joker kartları kullanabilirsiniz. rm *.mp3 , adları .mp3 ile biten tüm dosyaları kaldırır. Böyle bir benzerlik yoksa, her dosyayı tek tek belirtmeniz gerekir.

Aslında, yazmayı sekme tamamlandırarak yazabilirsiniz. Örneğinizde, rm q yazıp tabulator tuşuna basarsanız rm qweerkrtrkgljdjfkdjfdkf.mp3 'ye tamamlanır. Bu, q ile başlayan tek dosya olduğundan çalışır. % Co_de% yazdıysanız, b ile başlayan iki dosyanız olduğundan, bu işlem tamamlanmak için yeterli olmaz.

    
verilen cevap André Stannek 14.11.2012 20:36
0

Kolay, rm 2.mp3 blabla.mp3 .

DİKKAT: Bu, kalıcı olarak silinmeye neden olur!

Dosyalar için:

1234.MP3 1345.MP3 1234.MP4

rm -f 1*3*.MP3 ilk 2'yi siler, onaylama yok, PERMANENTLY!

* bile boş olan bir şeydir, bu yüzden hala ikincisini siler.

    
verilen cevap user92200 14.11.2012 20:27
0

Yaptığım şey, kurtulmak istediğinden daha azı varsa, bu komutları çalıştırmadan önce bir klasörde silmek istemediğiniz dosyaları koymaktır. Ama nihayetinde Wildcards ("*" ve "?") Ve tanımlayıcı ifadelerin bir birleşimi işi kolayca halledebilirdi. Sadece tutmak istediğiniz dosyalara veya kurtulmak istediğiniz dosyalara bağlıdır.

Hiç kimse, dosyaları uçbirim uygulama penceresine silmek için sürüklemeyi denediniz mi? Dizinin yanı sıra sizin için dosya adı yol stilini de klonlayabilir. Ancak, sadece 2 veya 3 dosyayı siliyorsanız, bunun sadece öğrenme amaçlı olduğunu umuyorum, aksi takdirde klavyemde "TAB" kullanarak el ile yol ve dosya adını yazabilirim. zaten yazdığınız ile başlayan geçerli dizin.

    
verilen cevap R4GN4R 20.07.2013 23:44
0

Sekme tamamlanması , yol . Varsayılan olarak Ubuntu'da bash için etkinleştirildi. Bu şekilde çalışır:

$ rm bl<tab>

otomatik olarak

olarak değiştirilecek
$ rm blabla.mp3

Dosya adı belirsiz ise, olası dosya adlarının listesini görmek için bir kez daha sekmesine basmanız gerekir:

$ rm b<tab><tab>
blabla.mp3  b.mp3

Bu, ayrıca, apt-get , service vb. gibi diğer birçok komut için de çalışır.

Daha da karmaşık bir sekme tamamlamasıyla ilgileniyorsanız, Grml config ile zsh 'a göz atın. sanrılama.

    
verilen cevap kraxor 08.07.2014 20:06

Etiketlerdeki diğer soruları oku