質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

3回答

12890閲覧

ターミナルで日本語名のディレクトリを素早くたどる方法はないのでしょうか

tonkatu05

総合スコア25

bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

1グッド

1クリップ

投稿2016/01/31 08:26

Ubuntuを使っています。

最近、ディレクトリ名が日本語だらけのNASにアクセスするようになり、

cd 日本語

を頻繁に打ち込むのに疲れてきています。
しかもディレクトリ名が「①ほげ_ぴよ」,「①ほげ_ふが」のような時は殺意が芽生えます。

日本語ディレクトリ名でも快適に移動できる方法は何かありますか?

DrqYuto👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

###コマンド引数の補完機能のあるシェルを使う。

例えば、zsh で「cd <TABキー>」とすると一覧が表示され、さらに<TABキー>を押していくとコマンドラインに候補が補完されます。
bash でできるのかわかりませんが、そのような機能を持ったシェルを使うといいと思います。

###screen, tmux などでコピー/ペーストする。

マウスを使わず、キー操作だけでコピー/ペーストができます。

###ディレクトリリストを表示させ、番号で選ぶ。

例えば、下記のような alias で cdl コマンドを定義します。
ディレクトリが多いとダメですが。

$ alias cdl='a=(`ls -1`) ; ls -1 | cat -n ; read b ; cd ${a[$b-1]}' [~]$ cdl (略) 17 ダウンロード 18 テンプレート 19 デスクトップ 20 ドキュメント 21 ビデオ 22 音楽 23 画像 24 公開 17 [ダウンロード]$

投稿2016/01/31 08:44

編集2016/01/31 09:01
TaichiYanagiya

総合スコア12173

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tonkatu05

2016/02/01 08:10

ご回答ありがとうございます。 多くの情報ありがとうございます! これを機にzshを使ってみることにします。
guest

0

cd コマンドを置き換える enhancd という便利なシェルスクリプトがあります。

これは過去移動したディレクトリを覚えてくれて、cd だけ、もしくは、cd ディレクトリ名の頭数文字 を入れると、履歴の中を探して合致するディレクトリに移動してくれるというものです。履歴には各ディレクトリが絶対パスで記録されているので、カレントディレクトリと関係なく、もっと深い場所や、全く別の場所にあるディレクトリへも一気にジャンプできます。

もし、合致するディレクトリが見つからなかったり、複数の候補がある場合は画面に一覧を出してくれます。そこでは、さらに文字をタイプして絞り込んだり、矢印キーで選択したりできます。

日本語のディレクトリ名でも使えるかは試してないのですが、作者の方は日本人なので、不具合があれば対応してくれるかもしれません。

投稿2016/01/31 11:54

編集2016/01/31 12:07
tatsuya6502

総合スコア2046

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tonkatu05

2016/02/01 08:08

ご回答ありがとうございます。 enhancd、良さそうですね!あとでチェックしておきます。 とりあえずこれを機にzshを使ってみることにしました。
guest

0

NASであれば、windows ならファイルエクスプローラ、Linux でもそれに類するプログラムを使えばいいような気がしますが、なんらかの事情でコンソールベースでアクセスしなければならないという事情なんでしょうね。

そういう事情という前提で、私に思いつけた対策を以下に書きます。
ご参考まで。

  • emacs の diredなどコンソールベースのファイラーを使う
  • パスがはっきりわかっていて、その中にユニークな英数字名があれば、 「//file.txt」 のようにワイルドカードで日本語名をかわす
  • ディレクトリ名を変更していいのであれば

-- すべてのディレクトリの頭に、find 等を使って任意のルールで数字をつける(ソートの並び順、更新日時等)
-- ワイルドカードを使って 「cd 123*」 といった方法で移動する

投稿2016/01/31 08:38

編集2016/01/31 08:40
kozuchi

総合スコア1193

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tonkatu05

2016/02/01 08:13

ご回答ありがとうございます。 なるほど、そのようにワイルドカードが使えるとは知りませんでした! 残念ながらディレクトリ名の変更はしちゃいけない感じです、、、。できたら確かにその方法が楽そうですね! 色々ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問