Parametre genişletme kapsamında !$
'u kullanmanın bir yolu var mı? Bu soruyu motive eden istenen kullanım hızlıdır (tuş vuruşları açısından) bir dosyanın isminin değişmesi (örneğin, bir değişkendeki dosya ismini kaydetme ve rsvg-convert $svg > ${svg/.svg/.png}
'u yürütme yerine, 'u kullanabilir, burada $!{/.svg/.png}
hatalı sözdizimidir) İstenen etkiyi yaratarak, söz konusu dosya önceki satırdaki son belirteç olduğunda, böyle bir komut sık sık değişen uzunluktaki önekleri paylaşan dosyaların varlığında sekme tamamlama kullanımı gibi alternatiflerden daha hızlı yazılabilir veya kopyalayıp yapıştırabilir bir fare ile seçerek dosya adı). Anlayabildiğim kadarıyla, böyle bir bağlamda !$
'u kullanmanın bir yolu yoktur, ama belki de bazı chicanery'lerle benzer bir etki elde edilebilir.
cevap
Değiştirme işlemini ne kadar karmaşık yapmak istediğinize bağlı olarak, tarih genişletme, bir dizenin diğerini ilk kez değiştirmeyi destekler. Sen En azından emacs modu bash da genişlemesi için (önceki komut satır içi son argüman değil koyacağız tüm geçmiş düzenleyiciler
here görebilirsiniz
rsvg-convert !$ > !$:s/.svg/.png
: Sadece gibi :
ile ikame önce komutu çalıştırdığınızda) alt + tuşlarına basın.. Yani bu durumda yazın en hızlı olabilir:
rsvg-convert
sonra alt + .alt + . sonra sadece o alt + BKSP yeni uzantı ile yerine koymak uzantıyı silmek: Eğer Eric'in örnekte değiştiriciler biraz incelediğimizde ise png
Hem harika öneriler, teşekkürler. – user001
, ayrıca yapabilirdi:
rsvg-convert !$ > !$:r.png
.svg,
- 1. Parametre genişletme Bash'de iç içe geçebilir mi?
- 2. Android'de Görünüm'ün Patlama animasyonu
- 3. !! Ruby'de (çift patlama) anlam
- 4. Sinyalleri kullanarak django kaydını genişletme
- 5. Açıklamalarda değişken genişletme
- 6. CSS'yi kullanarak metni yatay olarak genişletme
- 7. Neden genişletme türünü kullanarak Clojure'ın IFn'sini genişletemiyorum?
- 8. Ünitede bir patlama paterni gerçekten gerekli mi?
- 9. kaçış dolar işareti
- 10. Haskell dolar işletmecisi uygulaması
- 11. jquery.formatCurrency.js dolar simgesini kaldır
- 12. Microsoft.VisualStudio.TestTools.DataSource.XML genişletme
- 13. Nasıl perl regex kullanarak bir dizede dolar işareti ($) kaçış
- 14. Handsontable'ı Genişletme
- 15. System.Convert genişletme
- 16. ImageMagickNet'i genişletme
- 17. genişletme işlevselliği
- 18. "$" (dolar işareti) "JQuery" ile değiştirin
- 19. Dolar işareti, scalada ne yapar
- 20. Her satırın sonunda dolar işareti
- 21. "$" dolar karakteri önek çerezler isimleri
- 22. Perl parametre listelerinde dolar, işaret ve noktalı virgül karakterler ne anlama geliyor?
- 23. Farklı değişken şablon genişletme
- 24. MouseOver genişletme efekti
- 25. SWIG yerleşik sınıflarını genişletme
- 26. Koşullu makro genişletme
- 27. genişletme JCONSOLE işlevselliği
- 28. Genişletme/daraltma divs
- 29. Parametre adı groovy kullanarak nasıl değer vermez?
- 30. C# 4.0'da varolan bir nesneyi dinamikleri kullanarak genişletme
'un bir ekidir. Aslında, alt +. '' 'Dan daha fazlasını kullanıyorum. Daha sonra genişletmek yerine, (emacs modunda olduğunuzu varsayarak), önceki komutun son argümanını satır içi, tamamen genişletilmiş halidir. Sondan başka kelimeler kullanıyorsanız ya da daha fazla komutu geri döndürüyorsanız bu işe yaramaz !!: - 2' veya '! Mv: 1' –
@EricRenouf Bu oldukça yararlı, teşekkürler. Alt +. 'In farkında değildim, ancak önerilen kullanım için parametreden genişletilmiş bir '' $ 'bile daha hızlıdır. – user001