パイプの出力に基づいてディレクトリを変更する

パイプの出力に基づいてディレクトリを変更する

フィルタを使ってディレクトリに移動したい。

たとえば、次のようなファイルがあります。this-is-awsome

ls | grep this-is-awsome | xargs cd

フィルタがあるディレクトリにどのように入りますか?

ベストアンサー1

Saltonの口コミ問題を説明しました。以下はいくつかの回避策です。

cd "$(ls | grep this)"

一般的な注意事項にもかかわらず、これは悪いことがあります。出力の解析lsそれに適用されます。

少し良いバージョン(GNU仮定find):

cd "$(find -maxdepth 1 -type d -name '*this*')"

Bashを使用している場合は、他の(おそらくより良い)ソリューションがあります。

shopt -s nullglob
cd *this*/

おすすめ記事