• Herramientas Online
  • - Calculadoras
    • Contador de caracteres
  • - Descarga
    • Descarga de TikTok
    • Descarga de DouYin
  • - Herramientas web
    • BASE64
    • Base64 a imagen
    • Imagen a Base64
    • Codificación URL
    • JavaScript
    • Timestamp
    • Convertidor Unicode
    • Formato JSON
    • Modificar extensión
    • Crear lista
    • Optimizador CSS
  • - Herramientas de cifrado
    • Cifrado MD5
    • Generador aleatorio
  • - Herramientas de imagen
    • Compresión de imágenes
    • Generador de código QR
    • Lector de código QR
    • Vista previa de fondo
  • - Hojas de información
    • Herencia de grupo sanguíneo
    • Tallas de ropa
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Vimからshellにアクセスしたり、外部コマンドを実行したりする方法
2022-02-11

Vimは、すでに知っているように、多くの特性を含む強力なエディタです。Vimに関するチュートリアルをたくさん書きました。基本的な使い方、プラグイン、その他の有用な特性をカバーしています。Vimが海洋のような特性を提供していることを考えると、私たちはいつも読者と共有するために役立つものを見つけることができます。

このチュートリアルでは、編集ウィンドウで外部のコマンドを実行し、コマンドラインshellにアクセスする方法に重点を置きます。

しかし、私たちが始める前に、このチュートリアルで言及したすべての例、コマンドライン、説明をUbuntu 14.04でテストしました。私たちが使用しているVimバージョンは7.4です。

Vimで外部コマンドを実行する

Vim編集ウィンドウで外部コマンドを実行する必要がある場合があります。たとえば、Vimでファイルを開き、いくつかの変更を行い、これらの変更を保存しようとすると、Vimは十分な権限がないというエラーを投げ出します。

現在のvimセッションを終了し、ファイルを開くのに十分な権限を再使用すると、すべての変更が失われることを意味します。そのため、ほとんどの場合、選択肢は1つだけではありません。このような場合、エディタ内で外部コマンドを実行する能力が役立ちます。

後で上記の例に戻りますが、vimで基本的なコマンドを実行する方法について説明します。

ファイルを編集しているとします。このファイルに含まれる行数、単語数、文字数を知りたいとします。この目的を達成するためにvimのコマンドラインモードでは、コロンを入力するだけです:、次の感嘆符!、最後に、実行するコマンド(この例ではwcが使用されています)と直後のファイル名(%を使用して現在のファイルを表します)。

:! wc %

これは例です。

入力された上で説明したコマンドラインは、実行の準備をします。

次に、端末の出力を示します。

出力が表示されたら、リターンキーを入力するとvimセッションに戻ります。

コードやスクリプトを作成しており、このコードやスクリプトにコンパイル時のエラーや構文エラーが含まれているかどうかをできるだけ早く知りたいと思っています。このとき、この特性は本当に便利です。

続けて、ファイルに出力を追加する必要がある場合は、readを使用します。で行ないます。次に例を示します。

:read ! wc %

readコマンドは、外部コマンドの出力を編集したファイルの現在の行の次の行に新しい行として挿入します。必要に応じて、特定の行番号を指定することもできます。出力は特定の行の後に追加されます。

たとえば、次のコマンドは、ファイルの2行目の後にwcの出力を追加します。

:2read ! wc %

注意:$を使用して最後の行に挿入し、0を最初の行の前に挿入します。

次に、最初に説明した例に戻ります。次のコマンドは、ファイルを閉じる必要がなく、ファイルを保存し(保存されていないコンテンツが失われないことを意味します)、sudoコマンドを使用して再開するのに役立ちます。

:w ! sudo tee %

Vimでshellにアクセス

個別のコマンドを実行するだけでなく、vimに自分が新しく作成したshellを入れることもできます。この目的を達成するには、エディタで次のコマンドを実行する必要があります。

:shell

または、

:sh

shellタスクを完了したらexitを入力します。これにより、元のVimセッションに戻ります。

注意すべき抜け穴

実際の世界では、アクセス可能なshellは絶対にユーザー権限に合致しますが、権限付与技術にも使用できます。以前の記事(sudoeditで)で説明したように、ユーザーsudoに提供された権限がVimでファイルを編集するだけであっても、この技術を使用してエディタから新しいshellを実行することができ、rootユーザーまたは管理者ユーザーができるすべてのコンテンツを作成することができます。

まとめ

Vimで外部コマンドを実行できるのは、多くのシーン(この記事で説明したシーンもあります)で役立ちます。この機能の学習曲線は面倒ではないので、初心者でも経験のあるユーザーでもよく使えます。


ソース元URL:https://dopubox.com/article/p/044150c91aa2d7df

Otras Herramientas
  • Contador de caracteres Descarga de TikTok Descarga de DouYin BASE64 Base64 a imagen Imagen a Base64 Codificación URL JavaScript Timestamp Convertidor Unicode Formato JSON Modificar extensión Crear lista Optimizador CSS Cifrado MD5 Generador aleatorio Compresión de imágenes Generador de código QR Lector de código QR Vista previa de fondo Herencia de grupo sanguíneo Tallas de ropa
  • “ひばり”の愛称にふさわしい美しいメロディ。ハイドンの『弦楽四重奏曲第67番』【クラシック今日は何の日?】
    2024-05-30

    小学館も来週に報告書公表
    2024-05-31

    むのたけじ賞、名称変更 「生前に障害者差別発言」
    2024-05-31

    あらゆる知識に精通した「天才」が教えてくれた、頭を良くするための新書の読み方と「究極のインプット・アウトプット」の方法
    2024-06-02

    峰不二子役の増山江威子さん死去 声優、艶ある声でルパン翻弄
    2024-06-03

    「警察密着24時」担当者ら懲戒 テレビ東京、石川社長は3割返上
    2024-06-03

    テレ東が警察密着番組の担当者らを懲戒処分
    2024-06-03

    IT国家の最先端研究を知って 奈良・宇陀市がエストニアへの短期留学事業
    2024-06-04

    「2億円トイレ」のイメージ図など公開 大阪・関西万博
    2024-06-04

    稀代のピアニスト、マルタ・アルゲリッチの伝説の始まりはこの1曲から【クラシック今日は何の日?】
    2024-06-04

    特別展 「工芸的美しさの行方―うつわ・包み・装飾」が東京と京都で開催。日本の美術工芸を世界へ 
    2024-06-04

    2025年春に「直島新美術館」が誕生。既存の活動から新しい価値創造を目指す
    2024-06-04

    GROUP「島をつくる | Planning Another Island」(マイナビアートスクエア)開幕レポート。高層ビルのなかで建築をコンポストする
    2024-06-05

    「VOCA展」に関するハラスメント防止のためのガイドラインが制定
    2024-06-05

    ビル・エヴァンスの名言「才能なんて取るに足りない」【本と名言365】
    2024-06-05

    佐渡金山「情報照会」と勧告 世界遺産登録に可能性残す
    2024-06-06

    佐渡金山、世界遺産登録に向け「追加情報の提出」求められる
    2024-06-06

    今週末に見たい展覧会ベスト8。閉幕の横浜トリエンナーレから、「梅津庸一 クリスタルパレス」、石川九楊の2ヶ月連続個展まで
    2024-06-06

    書評:「普通にラッセンが好き」と言えない現代美術界へ。原田裕規『評伝クリスチャン・ラッセン 日本に愛された画家』
    2024-06-06

    パートナーとの強い絆から生まれた、ベンジャミン・ブリテンの代表作【クラシック今日は何の日?】
    2024-06-06

    ©  Dopu Box
    💛