次の構造のディレクトリがあります。
example
├───1
│ └───01-01-2015.txt
├───2
│ └───02-02-2016.txt
├───3
│ └───03-03-2017.txt
└───script.sh
すべての.txtファイルを見つけて、そのファイルの外側に特定のフォルダの.txtファイル名に基づいて名前で新しいフォルダを作成するスクリプトを作成しようとしています。
結果は次のとおりです。
example
├───1
│ ├───01-01-2015
│ └───01-01-2015.txt
├───2
│ ├───02-02-2016
│ └───02-02-2016.txt
├───3
│ ├───03-03-2017
│ └───03-03-2017.txt
└───script.sh
したがって、フォルダ「3」サブフォルダ「03-03-2017」、フォルダ「2」サブフォルダ「02-02-2016」などです。
すべての.txtファイルを見つけることは非常に簡単であることを知っていますが、それをディレクトリ生成と各検索結果のサブストリングの実行と組み合わせる方法はわかりません。
よろしくお願いします! !
ベストアンサー1
find example -name \*.txt | sed 's/\.txt$//' | xargs -n 1 mkdir
警告:パスが必要ですいいえ改行文字を含みます。
編集:GNUツールを使用している場合は、terdonの説明を参照してください。