Vim editörü, bir dosyayı başka bir dizine nasıl kaydedebilirim


41

Ubuntu ve vim editörünün dünyasında yeniyim.
Sorum şu: vim kullanarak localhost'a bir dosyayı nasıl kaydedebilirim?
Komutu kullandığımda :wdosyayı saklıyorum ama nerede? Ve dosya konumunu nasıl değiştirebilirim /var/www/?


@ElderGeek, bu güzel çalıştı, bir cevabı yaparsanız kabul edeceğim.
heather

Yanıtlar:


49

:pwdMevcut çalışma dizinini görüntülemek için girebilirsiniz . Basitçe girerseniz dosyanızın kaydedileceği yer burasıdır :w filename. Çalışma dizinini ile değiştirebilirsiniz :cd path/to/new/directory. Veya dosyayı write komutuyla kaydetmek istediğiniz konuma tam yolu girebilirsiniz, örn :w /var/www/filename.


18

wVim komut destekler dosya adı parametre olarak, böylece, bir yol içerebilir

:w /var/www/filename

çalışması gerekir, bu dizine yazma izniniz varsa.
Yol adını oluşturmak için sekme tamamlamayı da kullanabilirsiniz.

Bare komutu :wyalnızca vimzaten bir dosya adı vermeye başladığınızda çalışır .


1
Evet,: w komutunu kullandığımda zaten dosyaya bir isim vermiştim ... Bana verdiğin ipucunu kullanarak dosyayı localhost dizinine kaydetmeye çalıştım ve işe yaradı! Çok teşekkür ederim, eğer bir gün yardım edebilirsem tereddüt etmem!
berga007

11

Yeni dosyayı kaydetmek istediğiniz dizine gidin, düzenlemek istediğiniz dosyayı açın ve ardından

Esc:sav newfilenameVeya Esc:w newfilenamebu sizin için çalışması gerekir.

Vim ile ilgili ipuçları hakkında daha fazla bilgi için bu levhayı yararlı bulabilirsiniz .

İstediğiniz gibi düzenleyin.

:sav dosyayı yeni bir adla kaydeder ve yeni dosyayı Vim'de açar.

Not:: sav, ilk arabelleği kapatmaz, gizler. Varsayılan olarak, gizli arabellekler kaldırılır.

:w dosyayı yeni bir adla kaydedin, ancak orijinali düzenleme için açık tutun.

Kaynağı düzenle: https://stackoverflow.com/questions/4980168/how-to-save-as-a-new-file-and-keep-working-on-the-original-one-in-vim


Muhtemelen cevap düz arasındaki farkı anlatmalı :savve :wonu bilmek oldukça kullanışlı bir yöntem.
Matteo Italia

1
@MatteoItalia iyi bir nokta. Bitti.
Elder Geek

Mükemmel, oy verildi!
Matteo Italia

6

Böyle bir şeyi denemek istediğine inanıyorum. (sonunda çift eğik çizgi unutma.)

:w /var/www//%:t

Evet böyle bir şey denedim ve işe yaradı. Teşekkürler
berga007

1
@ berga007 lütfen "teşekkür ederim" yorumu bırakmayın, bunun yerine cevabı kabul edin .
guntbert

6

Vim'de, dosyanın o anda nerede kaydedildiğine bakılmaksızın, kaydetmek istediğiniz yeni konuma yol verebilirsiniz. Örneğin, dosyayı Masaüstünüze kaydetmek için:

basın esc, sonra normal moduna geçmek yazın

:w ~/Desktop/filename

Bu, dizine yazma izniniz olan herhangi bir yol için çalışır. Yazma izninizin olmadığı bir yerde saklamak istiyorsanız, bunu yapabilirsiniz:

:w !sudo tee /path/to/my/filename

3

Vim ile yeni bir dosya oluşturduysanız, Esc- :- w- q- tuş dizisine basmak Enter, dosyayı Vim'i başlattığınız konuma kaydeder. Örneğin, / home / $ USER konumundaysanız, dosya bu dizinin altında oluşturulur. Kolay yolu kullanarak vim başlatmaktır:

vim myFile.txt

Bu, yeni bir dosya oluşturur veya myFile.txtgeçerli konumdaki adın üzerine bir dosyanın üzerine yazar .


2

Başlatıcıda ikinci simge bir dosya dolabının resmidir. Buna Nautilus (Ubuntu'nun Dosya Yöneticisi) denir.

Nautilus'u seçtiğinizde giriş dizininiz açılmalıdır. Dosyanızı orada görmelisiniz.

Dosyanıza sağ tıklayın ve 'kopyala'yı seçin. E-postanı aç, yeni bir mesaj oluştur, mesajın üstüne tıkla. Sonra 'sağ tıklayın' ve bu sefer 'Yapıştır'ı seçin.

Bu talimatlar Ubuntu 14.04 ve 16.04 için geçerlidir ancak 12.04'ün Nautilus içerip içermediğini bilmiyorum.


2
12.04, Nautilus'u içerir. Buraya bakın: packages.ubuntu.com/search?keywords=nautilus
wjandrea

3
-1 Bu cevabın Vim ile ilgisi yok. Bence yanlış soruya okunaklı bir cevap gönderdin.
wjandrea

@wjandrea Bunu telefonuma yazdığımda OP'nin çok parçalı bir sorusu vardı "ya da belki kendime e-postayla gönder". Bu cevap OP'ye sorunun e-posta bölümünü nasıl kullanacağını söyler. Neden aşağı oy kullandığınızı söylediğiniz için teşekkür ederiz. Herkes nezaketini uzatmaz.
WinEunuuchs2Unix
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.