GNU/Linux >> Znalost Linux >  >> Linux

Tipy pro Vim – Upravujte vzdálené soubory pomocí Vim v systému Linux

Vim je jedním z nejlepších, vysoce konfigurovatelných textových editorů, který přichází se spoustou jedinečných funkcí, které v jiných textových editorech nenajdete. Dnes si probereme jednu z užitečných funkcí – úpravu souborů vzdáleného systému z místního systému . Význam - můžeme upravovat soubor uložený ve vzdáleném systému Linux, aniž bychom se k němu museli přihlašovat přes SSH nebo jiné metody. Než jsem poznal tento trik, obvykle SSH do vzdáleného systému a pak upravuji soubory. Existuje však také způsob, jak upravit vzdálené soubory pomocí Vim z vašeho místního systému. Počínaje verzí Vim 7.x,netrw.vim plugin je nainstalován jako standardní plugin. Tento plugin vám umožňuje upravovat soubory přes ftp, rcp, scp nebo http.

Co je plugin Netrw?

Pro ty, kteří by se zajímali, Netrw Plugin (síťově orientované čtení, zápis a procházení) podporuje místní a vzdálené úpravy, čtení a zápis souborů přes sítě. Podporuje také procházení místních i vzdálených adresářů. Další podrobnosti získáte zadáním :help netrw uvnitř vaší relace vim. Pojďme dále a uvidíme, jak upravit soubory uložené ve vzdáleném systému Linux z našeho místního systému pomocí Vim.

Upravujte vzdálené soubory pomocí Vim v systému Linux

Úprava vzdáleného souboru pomocí Vim je velmi jednoduchá:

vim scp://[email protected]//path_to_file

Příklad:

Mám textový soubor s názvem info.txt v mém vzdáleném systému s následujícím řádkem.

Welcome to OSTechNix

Nyní tento soubor upravím a provedu v něm nějaké změny a poté soubor uložím a zavřu. Vše z mého místního systému!

K tomu jednoduše spustím následující příkaz:

$ vim scp://[email protected]/info.txt

Zde je vizuální ukázka výše uvedeného úkolu:

Zde byste měli věnovat pozornost následujícím třem věcem.

1. [e-mail chráněný] (Např. [e-mail chráněn]) – zde sk je uživatelské jméno vzdáleného systému. 192.168.225.22 je IP adresa vzdáleného systému.

2.Jedno lomítko (/) - Pokud chcete upravit soubor, který je uložen v $HOME adresář vzdáleného systému, musíte použít koncové lomítko k oddělení IP adresy vzdáleného systému nebo názvu hostitele od cesty k souboru. Ve výše uvedeném případě jsem uložil soubor info.txt do adresáře $HOME, takže jsem použil jediné lomítko na konci.

3. // (dvojitá lomítka) - Chcete-li zadat úplnou cestu k souboru, musíte použít dvojitá lomítka. Jedno lomítko (/) se používá k oddělení IP adresy nebo názvu hostitele vzdáleného systému od skutečné cesty k souboru. A další lomítko se používá k uvedení absolutní (úplné) cesty ke vzdálenému souboru. Řekněme například, že upravujete soubor s názveminfo.txt který se nachází v /home/sk/Documents/ adresář vašeho vzdáleného systému. V tomto případě by příkaz byl:

$ vim scp://[email protected]//home/sk/Documents/info.txt

Všimněte si dvojitých lomítek mezi IP adresou vzdáleného systému a cestou k souboru. Dvojitá lomítka jsou vyžadována pouze při zmínce o absolutní cestě ke vzdálenému souboru.

Ověřte obsah vzdáleného souboru z místního systému:

$ ssh [email protected] cat info.txt
[email protected]'s password: 
Welcome to OSTechNix blog

Vidět? Do souboru info.txt jsem přidal další slovo „blog“.

Někdy jste možná změnili výchozí port SSH pro bezpečnostní účely. V takovém případě zmiňte port SSH ne jako níže.

$ vim scp://[email protected]:2200/info.txt

Nahraďte 2200 svým číslem portu SSH.

Pokud nemáte přístup ssh/scp, můžete použít jiné protokoly, například ftp , jako níže.

$ vim ftp://[email protected]/path/to/file

Co se tedy děje na pozadí?

Když upravujete vzdálený soubor z místního systému pomocí následujícího příkazu;

$ vim scp://[email protected]/info.txt

Možná jste si všimli následujícího výstupu v dolní části editoru Vim:

:!scp -q '[email protected]:info.txt' '/tmp/vsoDT6K/0.txt'
"/tmp/vsOLzGf/0.txt" 1L, 21C

Význam – Příkaz scp zkopíruje požadovaný soubor ze vzdáleného systému a uloží jej do /tmp adresář vašeho místního systému a poté jej otevře pro úpravy. Po dokončení úprav se soubor nahraje zpět do vzdáleného systému pomocí příkazu scp.

Úprava vzdálených souborů v relaci Vim

Pokud se již nacházíte v relaci Vim, můžete upravovat vzdálené soubory z místního systému, jak je uvedeno níže.

Otevřete soubor z Vimu v nové vyrovnávací paměti spuštěním následujícího příkazu:

:e scp://[email protected]/info.txt

Proveďte změny v souboru a stiskněteESC a zadejte :wq uložte a zavřete soubor.

Podívejte se na následující vizuální ukázku.

Jak můžete vidět ve výše uvedeném výstupu;

  • Spustil jsem editor Vim ze svého místního systému,
  • Potom jsem otevřel vzdálený soubor s názvem info.txt v relaci Vim v nové vyrovnávací paměti,
  • A poté v souboru provedli nějaké změny,
  • Nakonec uložte změny a zavřete soubor (ESC a :wq).

Soubor můžete také otevřít na nové kartě spuštěním:

:tabe scp://[email protected]/info.txt

Snad to pomůže. V příštích dnech zveřejním další tipy Vim. Pokračujte v návštěvě!

Doporučené čtení:

  • Tipy pro Vim – čtení a zápis vzdálených souborů pomocí Vim v systému Linux
  • Provádění příkazů na vzdálených systémech Linux prostřednictvím SSH

Linux
  1. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  2. Přesouvání souborů na Linuxu bez mv

  3. Jak přenášet soubory v Linuxu pomocí SCP a Rsync

  1. Jak na to:Programování v C s dočasnými soubory v Linuxu

  2. Jak v Linuxu zobrazím seznam souborů s úplnými cestami?

  3. Soubory ZIP se v Linuxu rozšiřují zpětnými lomítky, žádné podadresáře

  1. 7 tipů pro příkazový řádek Linuxu pro úsporu místa v souborech médií

  2. 10 úžasných tipů a triků pro práci s Linuxem

  3. Vzdálená úprava pomocí lokálního editoru (Linux)