Sorgu
Bash kullanıyorum. Dosyaları ararken genellikle aşağıdakileri yapacağım:
find -name stackexchange.hs
Ve genellikle sonuçlar şöyle görünecektir:
/youre/the/man/now/dog/stackexchange.hs
/you/are/no/longer/the/dog/dog/stackexchange.hs
/this/is/the/file/i/want/stackexchange.hs
Sonra aşağıdakilerden birini yapmak isteyeceğim:
- Seçenek 1: Sonuç listesindeki son öğeyi vim olarak açın .
- 2. Seçenek: içinde sonuç listesinde Açık N. öğesi vim .
Şu anda fare ile kesip yapıştırıyorum. Bu da beni soruma getiriyor :
- Seçenek 1 ve 2'yi gerçekleştirmek için kolay, tek bir astar var mı? Bunun gerçekleşmesini unutmayın sonra
findkomuta. - Bir çeşit bash vektörü / dizisinde stdout'tan N-çizgileri yakalamanın bir yolu var mı?
İdeal kullanım
$ find -name am_i_really_all_alone.txt
./borges/library/you_are_not_alone.txt
./borges/library/am_i_really_all_alone.txt
$ vim (N)
(sözdizimi ve anlambilim farklı olabilir, ancak konuyu anlayabilirsiniz)
Similaria
Birkaç benzer soru var gibi görünüyor. İşte benim algılanan farklarım (aydınlanmaya açıkım):
- "Bulma Komutu ile Bulunan Dosyayı Aç" , bir dosya adını (veya herhangi bir şekilde)
findiçine sokmak için tek satır oluşturmaya odaklanırvim. Benim durumumda,findönce, daha sonra borulamak istiyorum (tabiri caizse). Yakalama / kullanmam kesinlikle sonra gerçekleşir . - "Komut Lind'den Son Çıktıyı Yeniden Kullan" anlaşılır gibi görünüyor, ancak komutu tekrarlıyor gibi görünüyor ve N'inci çıktı hattını yakalamaktan bahsetmiyor . Açıkçası beni korkutuyor.
- "Bir Bash Yerleşiminin Çok Hatlı Çıkışını Yakala" yakın ancak tam olarak orada değil.
- "Terminal, kabuk, tty, konsol vb. Arasındaki kesin fark nedir?" bu gerçekten iyi bir okuma.
Yardımın için teşekkürler! 90'lı yaşlarda gençken * nix / BSD kullandıktan ve tak ve çalıştır ses kartım için sürücüleri yüklememe yardımcı olmak için tükenmişlik, asit kafalı komşumu arayarak korkuyorum, daha az korkutucu bireylerle (algılanabilir şekilde) minutiae. Geri dönmek iyi hissettiriyor.
vim $(command |tail -n1).