Komutu çalıştırmadan fc'yi nasıl iptal edebilirim?


13

Fc komutu, önceki komutun görsel olarak düzenlenmesine izin verir. Editörde fikrimi değiştirirsem, komutun yürütülmesini nasıl durdurabilirim. Vim'de q yazın! veya q her ikisi de komutun yürütülmesine neden olur ve CTRL-C de çalışmaz. Düzenleyici ve sonra wq komutu silmek için tek seçenek var mı?

Yanıtlar:


17

Vi'den :cqkaydetmeden ve sıfır olmayan bir dönüş koduyla çıkmak için yazabilirsiniz . Bu durumda komut tekrarlanmaz.

Alternatif olarak, genellikle ctrl-zkomutu yeniden yapmadan sizi kabuğa geri götüren düzenleyiciyi askıya alabilirsiniz . Hala fgeditörü yeniden başlatmanız gerekiyor, ancak tmp dosyası artık etrafta olmayacak, böylece editörden güvenle çıkabilirsiniz. Ya da kill -9 %bu askıya alınmış editörü yapabilirsiniz .

Katılıyorum, daha kolay olabilir. Tabii ki, vi veya emacs komutlarını kullanarak bash içindeki satırları her zaman düzenleyebilirsiniz.


vi ": cq" komutuna sahip değildir. ": Q!" Yazmak ister misiniz?
schily

@ schily üzgünüm, vi tarafından vim varsayıyordum. Sen vim okuyabilirsiniz cqiçinde Quickfix .
meuh

Ne yazık ki, vim POSIX uyumlu değildir (geliştirmelerin yanı sıra sapmalar da vardır). Genel bir yardım için, yerel veya satıcının benzersiz geliştirmelerine bağlı olmamak genellikle iyi bir fikirdir. BTW:: q! POSIX vi bu durumda! = 0'dan çıkacağı için yeterlidir.
schily

@schily Yüklenmekte olan vime bağlı olarak çoğu durumda muhtemelen güvenlidir ve bu durumda asker özellikle q!onlar için çalışmadığını söyledi
Michael Mrozek

2
Bunun nedeni bir hata olmaması ve bu nedenle çıkış kodunun 0 olmasıdır. Vi'de: c (geçersiz bir komut mesajıyla sonuçlanır) ve sonra şunu yazın: q! ve hatırlanan hata bir çıkış koduyla sonuçlanır! = 0. Bununla birlikte vim'de çalışmaz. Benim önceki varsayım: q! her zaman bir çıkış koduyla sonuçlanır! = 0 yanlıştı.
schily

3

Belki de hatırlamanın daha kolay bir yolu komutu silmek (dd yapmalı) ve çık ( ZZya da kaydetmeyle çıkmanın başka bir yoludur). IMHO, :cqoldukça gizlidir.

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.