Mám soubor testfile.xml, který chci otevřít pomocí Vim a smazat v příkazovém režimu

Komentáře

odpověď

Existuje mnoho způsobů:

  1. Použití intercativního prostředí ve vimu

    V editoru –

    :sh rm textfile.xml 
  2. Používání Bang (!)

    Jak navrhl DopeGhoti –

    :!rm textfile.xml 
  3. Z tohoto odkazu .

    Přidat do vaše ~/.vimrc

    command! -complete=file -nargs=1 Remove :echo "Remove: "."<f-args>"." ".(delete(<f-args>) == 0 ? "SUCCEEDED" : "FAILED") 

    Potom ve vimu

    :Remove testfile.xml 
  4. Znovu ze stejného odkazu ve # 3

    Použijte tento příkaz:

    :call delete(expand("%")) | bdelete! 

Odpověď

Dalším způsobem, jak interaktivně mazat soubory, je použití

:E 

nebo

:Ex 

pro ex (ořezávání) adresáře souborů. Zde máte interaktivní okno, které vás provede. Jakmile vyberete položku, kterou chcete smazat, použijte

Shift-D 

potvrzení pomocí

y return 

Takto to vypadá nahoře v mém okně v režimu průzkumníka:

" ============================================================================ " Netrw Directory Listing (netrw v140) " C:\Users\cbkrd\Desktop " Sorted by name " Sort sequence: [\/]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,\.info$,\.swp$,\.bak$,\~$ " Quick Help: <F1>:help -:go up dir D:delete R:rename s:sort-by x:exec " ============================================================================ 

Komentáře

  • :E vedlo k E464: Ambiguous use of user-defined command, ale :Ex fungoval dobře.

Odpověď

Dočasné odstranění souboru

:!rm % 

% je aktuálně otevřený soubor

Ctrl + Z , zastaví proces

zkontrolujte pomocí ls, soubor již není na disku

fg vrátí soubor na vim

můžete jej uložit pomocí běžných příkazů vim

odpověď

Jak uvádí Yash: existuje mnoho způsoby. Ale ten nejkratší,

:echo delete(@%)

se zobrazí pouze skrytý, pouze na konci Yashova odkazu:

Nerozumím, proč byste používali všechny tyto příkazy a funkce.

Proč ne :echo delete(filename) ? Nebo chcete-li smazat soubor a vyrovnávací paměť, což se podle mého názoru stává velmi zřídka, můžete napsat :echo delete(@%), a pokud bude úspěšný – :bw!.

S echo (místo call ) vidíte výsledek přímo, 0 nebo -1.


:!rm % od @Justin je pravděpodobně stejný, ale je zde přepínač obrazovky a Zpráva „již není k dispozici“ – s delete() je plynulejší.

Nerozumím, co rm je filtrování zde …


Celá myšlenka má většinou smysl, pokud chcete řadit spoustu souborů:

vim $(find -size -100c -type f)

Pokud chcete některé z těchto malých souborů smazat / uchovat. :n[ext] je můžete procházet a mazat přímo . Soubor :echo delete(@%) by měl být namapován jen dočasně, protože je nebezpečný. Ztratil jsem soubor nápovědy a přejmenoval jiný, zatímco experimentuje s „%“.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *