echoを組み合わせて.*/と*/の単一の結果を生成できますか?

echoを組み合わせて.*/と*/の単一の結果を生成できますか?

このechoコマンドは、渡された式によって異なる結果を出力します。作業ディレクトリは/home/etc

$ echo .*/
/ ../ .cache/ .config/ .gnupg/ .local/ .mozilla/ .ssh/

$ echo ./*
./Desktop ./Documents ./Downloads ./Music ./Pictures ./Public ./snap ./Templates ./Videos

$ echo .*/*
.cache/event-sound-cache.tdb.d410907cf15246578458d0ad7919eb5e.x86_64-pc-linux-gnu .cache/evolution .cache/fontconfig .cache/gnome-screenshot .cache/gnome-software .cache/gstreamer-1.0 .cache/ibus .cache/ibus-table .cache/libgweather .cache/mesa_shader_cache .cache/mozilla .cache/thumbnails .cache/ubuntu-report .cache/update-manager-core .cache/wallpaper .config/dconf .config/enchant .config/eog .config/evolution .config/gedit .config/gnome-initial-setup-done .config/gnome-session .config/goa-1.0 .config/gtk-3.0 .config/ibus .config/nautilus .config/pulse .config/rclone .config/update-notifier .config/user-dirs.dirs .config/user-dirs.locale ./Desktop ./Documents ./Downloads .gnupg/private-keys-v1.d .gnupg/pubring.kbx .gnupg/trustdb.gpg .local/share .mozilla/extensions .mozilla/firefox .mozilla/systemextensionsdev ./Music ../ec ./Pictures ./Public ./snap ./Templates ./Videos

$ echo */*/
Downloads/sync/ Downloads/testdir/ snap/gnome-calculator/

目標は、出力を取得するためのコマンドの数を減らすことです。出力echo .*/echo ./*それ以上を結合する単一のechoステートメントを持つことは可能ですかecho .*/ */

ベストアンサー1

dot-files(ドットで始まるファイル)とfile-expansion(別名ワイルドカードリストファイル)がデフォルトでファイルと一致しないことがわかっているとします。

あなたは得ることができます一つこれを行う場合は、次の事項を記載してください。

$ echo .*/ ./* .*/* */*/

それがあなたが尋ねたいものであれば。


問題は今になる。

echo .*/ */に加えて、echo .*/とecho ./*の出力を結合する単一のechoステートメントを持つことはできますか?

pwd:(移植可能)にファイル*とドッ​​トファイルをリストすると仮定すると、答えは「はい」です。.*

find * -maxdepth 1 -type d

バッシュマン:

shopt -s dotglob
echo */

おすすめ記事