joppot

コピペで絶対動く。説明を妥協しない

mac unix

cdとlsを合体させて移動したら中身を表示する

投稿日:2013年12月13日 更新日:


abstract-96855_1280

概要

みなさんこんにちわ candleです。今回はcdとlsを組み合わせて、移動する度に中身を表示する方法を試してみましょう。そもそも、なぜこんなことにニーズがあるかというと、cdしてディレクトリを移動したらほぼ100%ディレクトリの中身を確認するでしょ。しないことなんてあるの?もうcdとlsはコンビでいいよと思ったからです。

エイリアスを作って新しいcdlsコマンドを作って、終わりでも良いのですが、
どうせなら、cdそのものにlsの機能をつけてしまおうと思います。

前提

Uinuxコマンドがある程度分かる人
macのPC環境

cdls関数を作る

ホームディレクトリの.bash_profileを開きます。どこでも良いので下の方に書き込んでいきます。

始めにcdls関数を作成します。cdls関数のコードは下のようになります。

function cdls() {
  # cdがaliasでループするので\をつける
  \cd "$@" && ls
}

コメントアウトにもあるように、cdの前にバックスラッシュを入れないとaliasで呼び出した時に無限ループをするので、必ずバックスラッシュ を付けてください。

これでcdlsコマンドが作成出来ました。保存したら、試しにcdlsをつかってみます。

保存しても、直ぐに使えるわけではなく、ターミナルに設定を反映させる必要があります。
bash_profileの設定をターミナルに反映するには

source ~/.bash_profile

とコマンド打つ必要があります。

そしたら、ホームディレクトリから

cdls Documents

とやってドキュメントに移動してみます。

ホームディレクトリからDocumentsディレクトリに移動して中身が見えています。

cdコマンドにcdlsを紐付ける

正直、cdlsコマンドは面倒くさいのでエイリアスを使ってcdとcdlsを紐付けます。
.bash_profileに

alias cd=cdls

と書くだけです。これでcdにcdlsが紐付かれて、cdを打つだけで実質cdlsが使えます。
最終的な.bash_profileは下のようになります。

保存したら、前回と同じように

source ~/.bash_profile

で設定をターミナルに反映させて
同じようにcdコマンドを使ってみましょう。

cd Documents

どうでしょう、移動と同時に中身が見えるようになりました。

まとめ

cd からのlsなんて面倒臭いにほかなりません。この設定をすると慣れない内はcdの後にlsを打たないのに違和感を覚えますが、なれるとバリ速です。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-mac, unix
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Macのitermでスクロールバックを増やしたり無制限にする設定

概要 みなさんこんにちはcandleです。今回はitermのスクロールバックの制限を増やしたり、無制限にする方法を紹介します。 itermのスクロールバックできる量はデフォルトで確か、2000行だと思 …

Mac YosemiteのFinderをカスタマイズして使いやすくする

概要 みなさんこんにちはcandleです。今回はfinderの設定を行い、より使いやすいfinder構成を行いましょう。 finderはプログラマーでもよく使うソフトでこれが使いにくいとストレスしかた …

Mac OS Mavericksのテキスト音声入力を試す

概要 どうもみなさんこんにちはcandleです。今回は文字やテキストをキーボードから打ち込むのではなく、マイクから入力する方法を試したいと思います。 条件 OSがMavericksである 音声拡張をイ …

macのemacs23,24でemmet(1.0.10)の補完の後にカーソルの位置がずれるのをデグレードして対処する

概要 みなさんこんにちはcandleです。今回はemacs23か24でemmetを使用した時に、カーソルの位置が行末になってしまう時の対処法を紹介します。 とは言っても、ソースコードをいじるわけではな …

macターミナルのウィンドタイトルとタブ名を変更する

概要 みなさんこんにちはcandleです。 ターミナルのウィンドタイトルとタブ名を変更する企画をやっていきたいと思います。 ウィンドタイトルというのは何処かというと下の画像の部分になります。タブ名もそ …

  • English
  • 日本語

ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー