• 在线工具
  • - 计算器
    • 字符计数
  • - 下载
    • TikTok 下载
    • 抖音下载
  • - 网络工具
    • BASE64
    • Base64 转图片
    • 图片转 Base64
    • URL 编码
    • JavaScript
    • 时间戳
    • Unicode 转换器
    • JSON 格式化
    • 修改扩展名
    • 制作列表
    • CSS 优化器
  • - 加密工具
    • MD5 加密
    • 随机生成器
  • - 图像工具
    • 图像压缩
    • 二维码生成器
    • 二维码识别器
    • 壁纸预览
    • 图片 EXIF
  • - 信息表
    • 血型遗传
    • 服装尺码
    • app.tool_clock
  • [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

其他工具
  • 字符计数 TikTok 下载 抖音下载 BASE64 Base64 转图片 图片转 Base64 URL 编码 JavaScript 时间戳 Unicode 转换器 JSON 格式化 修改扩展名 制作列表 CSS 优化器 MD5 加密 随机生成器 图像压缩 二维码生成器 二维码识别器 壁纸预览 图片 EXIF 血型遗传 服装尺码 app.tool_clock
  • ブームなぜ起きた? 東京国立近代美術館で「ハニワと土偶の近代」展
    2024-05-30

    『ボールアンドチェイン』南Q太著 評者:三木那由他【このマンガもすごい!】
    2024-05-30

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

    作曲家ビゼーの窮地を救った傑作オペラ『真珠採り』の聴きどころは?【クラシック今日は何の日?】
    2024-05-31

    【光る君へ】平安時代、強烈なエピソードで知られた2人の受領とは
    2024-06-01

    まだ無名だった作曲家エルガーが、婚約の贈り物として捧げた名曲【クラシック今日は何の日?】
    2024-06-01

    エリザベートコンクールで吉田さん6位入賞
    2024-06-01

    中国でドラえもん映画が興行首位 国際こどもの日に12億円
    2024-06-03

    福島県沖地震で解体 老舗文具店の新ビルが開店 イベントスペースも
    2024-06-04

    「国芳の団扇絵 猫と歌舞伎とチャキチャキ娘」(太田記念美術館)開幕レポート。世界初の展覧会
    2024-06-04

    「君たちはどう生きるか」展 第二部 レイアウト編(三鷹の森ジブリ美術館)レポート。絵を描くことの営為、そして苦悩も見せる
    2024-06-04

    「KOTARO NUKAGA(天王洲)」が移転し拡張。約386平米の巨大スペースに
    2024-06-05

    「UESHIMA MUSEUM」が開館。屈指の現代美術コレクションを一般公開
    2024-06-05

    性被害者支援の法人設立 スマイル社
    2024-06-04

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

    沙に囲まれた残酷な世界が私たちの社会を浮かび上がらせる。期待の作家が令和の世に送り出す、新たな青春のバイブル!
    2024-06-06

    岡田将生の初ブランド「IN MY DEN」始動、第1弾グッズの受注販売がスタート
    2024-06-06

    長山智美 デザイン狩人|HAY DOGS♡
    2024-06-06

    写真家の吉田ルイ子さん死去 「ハーレムの熱い日々」
    2024-06-06

    アキナの山名さん骨折 毎日放送、ロケ中に転倒
    2024-06-06

    ©  Dopu Box
    💛