Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5695

n番目に新しいファイルをvimで開く

$
0
0

目的

複数のlogファイルの最新をvimで開く方法を書きました。

もっとも新しいファイルをviで開くbashのalias

欲が出てn番目の新しいファイルも開きたいときはどうしましょうか?

参考

bashで引数つきのエイリアスを設定する

考えかた

引数を渡したいので関数で書きます。

$ tail ~/.bashrc
~~
# 引数の番号の最新をvimで開くfunction vl(){[$# -eq 0 ]&&command vim $(ls-t | sed-n 1p)[$# -ne 0 ]&&command vim $(ls-t | sed-n$1p)}$ vl 3 #<- これで3番目に新しいファイルが開きます。

説明

引数の数($#)で処理を変えます。引数がなければsedで1行目を表示します。引数があればsedで1番目の引数の中身を展開します。vlという関数を定義するのですが、ls -tで時間が新しい順に表示させて、sed$1番目のファイルを表示します。それをvimで受け取ります。参考によるとcommandがないと

内部で用いられているcommandは関数やエイリアス以外のコマンドを優先して実行するためのコマンドです。

だそうです。
様々な環境で動くかなんていうのは調べていないですが、ContOS7ではOKでした。どなたかのお役に立てると嬉しいです。


Viewing all articles
Browse latest Browse all 5695

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>