LoginSignup
10
9

More than 5 years have passed since last update.

[bash] agとpecoでディレクトリに移動したりファイルを開いたり、検索したりする

Last updated at Posted at 2015-12-09

agについてはこちら↓ファイルやソースコードの検索が出来ます
The Silver Searcher のススメ

pecoはこれ↓出力結果を渡すとフィルタリングでます。
https://github.com/peco/peco

treeはこれです↓ファイルやフォルダをツリー状に表示してくれます。
ディレクトリやファイルの構造を表示させる tree コマンド

練習がてら遊んでみました。

ファイルやディレクトリを検索する

ag に -g オプションをつけてやるとファイルでもフォルダでも検索できちゃうみたいです。

function agpc () {
  $(ag -g $1 | peco)
}

例えば

agpc /RUBY/

とやるとどこかにある/RUBY/というディレクトリの中身が出てきます。

agpc /RUBY/.*rb

とすると/RUBY/ディレクトリ以下のrbファイルがざあっと出てきました。

ディレクトリの移動

Treeで表示してディレクトリを移動するには

function trc(){
  local goto=$(tree --charset=o -f -L $1| peco | tr -d '\||`|-' | xargs echo)
  if [ -n "$goto" ]; then
    echo "cd $goto"
    cd $goto
  fi
}

trc の後に数字を入れるとTreeで表示するディレクトリの深さが変わります。

エディタで開く

上のやつをちょっと変えるだけですね。

function trsb(){
  local file=$(tree --charset=o -f -L $1| peco | tr -d '\||`|-' | xargs echo)
  if [ -n "$file" ]; then
    echo "sublime $file"
    sublime $file
  fi
}

trsbの後に数字を入れると表示する深さが変わります。
sublime のところをお好きなエディタにどうぞ。

10
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
9