2016-05-27 4 views
0

ファイルシステムを移動する通常の方法では、ls --colorを使用してすべてのファイルとディレクトリを表示し、cd [directory]と入力してからls --colorと入力してリンスし、ファイルの後に、vim [file]と入力して編集します。名前ではなくインデックスを使用するls/cdの方法

これは、IMOを行うにはかなり非効率的な方法です。私は、これらの機能を想定した

  1. はすぐにそれが色で内容を出力ディレクトリにI cd(私はいただきました、ディレクトリ、どのようなファイルやなどだと言うことができる)
  2. としてcdls --colorようにコンバインlscdインデックスを使用してください。私が言っていることは、ディレクトリ内のすべてのものの隣にlsの出力番号をつけて、[3]の4番目のアイテムか何かのために入力してください。cd [3]です。これは、ファイル名が時には長く(実際には長い)、スペースを含むことがあり、不可避の誤植のために長いコマンドを再入力したくないために役立ちます。

これは既にbashに入っているのか、それともプラグインであればダウンロードできますか、それともシェルスクリプトを書く必要があるのか​​分かりません。

編集:これをファイルシステムの探索に追加する必要があります。私は到達しようとしているターゲットファイルがありません。

+0

'find。-iname 'filetofind''は、おそらくあなたがより速く検索するのに役立ちます... – AlG

+0

私は何を探しているのですか?私はちょうどファイルシステムを掘り下げようとしています – rcplusplus

+0

多分あなたは真夜中のような視覚的なファイルマネージャ司令官。 –

答えて

1

ファイルシステムを効率的に閲覧する方法は複数あります。

  1. シェルのオートコンプリート機能を使用します。あなたの問題を解決する最も効率的な方法でしょう。

    cd /a/TABTAB

    これは/a/に含まれているディレクトリを表示するか、一つだけがあるのならば(それはあなたがこれまでに入力したものに対応)、それを使用してコマンドを自動補完します。

  2. コメントに示唆されているように、GUIを使用してください。

    $ ls /a 
    > b/ c/ d/ 
    $ ls /a/b 
    > e/ 
    $ ls /a/b/e 
    >fileIWant 
    $ cd /a/b/e 
    $ vim fileIWant 
    

    あなたはALT + を使用して、最後のステップのパスを繰り返すことができます:lscdを使用して

  3. 代わりの代わりに、あなたは複数のlsと最終cdを使用することができます。。
    最終的にcdは必要なく、vim /a/b/e/fileIWantを直接使用することもできます。

  4. lsを再帰的に使用してください。ls -R /a。出力は少し使いにくいかもしれません。

+0

誰かがリストの中でコードブロックを使う方法を知っているなら、私の答えを編集してください! – Aaron

+1

ありがとう@サイラス!だから、私は4の代わりに8つのスペースを使用する必要がありますか? – Aaron

+0

'ls -R'は私の心を先に越えましたが、それでインデックスを使う方法はありますか?ディレクトリ内に_really_ネストされている可能性があります – rcplusplus

関連する問題