バッシュを使っています。filelist
ファイルリストを含むというファイルがあるとします。
stuff/**/*.csv # to keep it simple (without loops), assume just one entry
#*.txt
#foo.md
#bar.bin
私はこれについて拡張したいと思います:
ls $(cat filelist)
私は得る:
ls: 'stuff/**/*.csv' にアクセスできません: そのファイルまたはディレクトリがありません
私が望むのは、これを処理のためにメインアプリケーションに転送できるファイルのリストに拡張することです。どうすればいいですか?
答え1
私の考えでは、再帰的なワイルドカードを使いたいと思います**
。そうですか?ただし、この機能はBashでデフォルトで有効になっておらず(およびshopt -s globstar
同様)で有効にする必要があります。以下を使用して値を確認することもできます。dotglob
extglob
shopt globstar
(またはコメントの提案shopt |grep glob
に答えてください。.と.の違いを参照してください。)set -o |grep glob
shopt
set -o