ソフトウェア開発者のための OSS、まとめてみました!

ソフトウェア開発を行なっている自分が、個人的に面白いと思ったプログラムの最新技術や、オープンソースソフトウェア(OSS)をまとめています!

MENU

コマンドプロンプト・ターミナルなどで [cd+ls] 操作をより高速にする代替手段として!「tere」

概要

皆さんはコマンドプロンプト・ターミナルなどでディレクトリ・ファイルの移動をされたことがある人が多いことでしょう。

例えば Linux などにログインした際に、ディレクトリ構成がとうなっているのか、ファイルがどこにあるのか、今どのディレクトリの階層にいるのかなどを確認する際にはコマンド ls を利用しますよね(ちなみに、ls コマンドは ディレクトリの内容を表示するコマンドです)。

www.ibm.com

また、ディレクトリ・ファイル構成を確認して別の場所に移動したい場合はコマンド cd を利用して移動しますよね(ちなみに、cd コマンドは現行ディレクトリを変更するコマンドです)。

www.ibm.com

ただ、別ディレクトリに移動して逐一コマンド lscd を打つのはとても面倒だなという場合があるかと思います。

そこで今回は、コマンドプロンプト・ターミナルなどで cd コマンドや ls コマンドを逐一入力するのを省略し、より簡単にかつ高速にディレクトリ・ファイル構成を参照したり移動することを可能とする OSS「tere」を紹介します。

tere を使用することで、より効率的にディレクトリ内を検索することができ、捜索完了後にはそのディレクトリへのパスを出力することができます。

それでは早速使い方などについてみてみましょう!

利用手順

Rust のツールチェーンがインストールされている場合は、以下のコマンドを利用してインストールすることも可能です。

$ cargo install tere

もしくは、以下の GitHub 上のリリースページからダウンロードして利用することができます。

github.com

なお、GitHub からリポジトリをダウンロードしてきた場合は、以下の準備作業もする必要があります。

bash/zsh の場合

以下のコードを .bashrc または .zshrc に追記してください。

tere() {
    local result=$(/path/to/tere "$@")
    [ -n "$result" ] && cd -- "$result"
}

xonsh の場合

以下のコードを .xonshrc に追記してください。

def _tere(args):
    result = $(/path/to/tere @(args)).strip()
    if result:
        cd @(result)

aliases["tere"] = _tere

なお fish をご利用の場合は、.config.fish

function tere
    set --local result (/path/to/tere $argv)
    [ -n "$result" ] && cd -- "$result"
end

PowerShell の場合

以下のコードを $PROFILE に追記してください。

function Invoke-Tere() {
    $tere_dir = '/path/to/tere'
    if ($isWindows) {
        $tere_path = Join-Path $tere_dir 'tere.exe'
    }
    else {
        $tere_path = Join-Path $tere_dir 'tere'
    }
    $result = . $tere_path
    if ($result) {
        Set-Location $result
    }
}
Set-Alias tere Invoke-Tere  

上記の操作により、準備完了となります。

コマンドプロンプト・ターミナル上で tere と入力することで本 OSS が起動することができます。

使用感

実際に自分も利用してみました。

動作自体はとてもサクサクで、軽量だったのでとてもストレスフリーに操作することができました。

実際の動作内容は GitHub 上の README に掲載されている動画が非常にわかりやすいので、ぜひこちらを参照してみてください。

基本は CUI 操作なのでキーボード操作となりますが、以下のようにキーボードショートカットも掲載されていますので、ぜひこちらもご覧になってみてください。

また、tere ではキーボード操作によってディレクトリ名やファイル名を入力しながら検索することができたり、さまざなオプションを追加することができます。

より詳細な使用方法については、GitHub 上のユーザーガイドを参照ください。

github.com

まとめ

今回は、コマンドプロンプト・ターミナルなどで cd コマンドや ls コマンドを逐一入力するのを省略し、より簡単にかつ高速にディレクトリ・ファイル構成を参照したり移動することを可能とする OSS「tere」を紹介しました。

tere は必要最小限かつシンプルであるため、とても使い勝手が良かったです!!

ディレクトリ・ファイルの検索とディレクトリ内の移動のみで、ディレクトリ名やファイル名を変更することはできないそうですが、良い意味でコマンド cdls に特化した OSS ということですね!

また、OSS 名の「tere」は、エストには語で「こんにちは」という意味だそうです!

入力する際もコマンドプロンプト・ターミナルで本 OSS を利用開始する際も、端末に挨拶して始めることを意識するとなかなか気持ちよく操作できそうですね。

毎回コマンド cdls を入力することが面倒だなと思っている方などは、ぜひ一度利用を検討してみてはいかがでしょうか。

ライセンス

European Union Public License 1.2

リンク

github.com