重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

シェルの作成について

「TEST」というフォルダの中に
日付ごとに数千個のファイルがります。

これをファイルのタイムスタンプ(更新日)ごとに
フォルダを作成しそこにファイルを移動する。

例:2月のときは28個フォルダができる
更新日:2010/02/01 00:00:00 ~23:59:59

20100201ファルダ

このようなことを実現できる
シェルの作成したいのですが
どのようにするとよろしいのでしょうか?

よろしくお願いします。

A 回答 (2件)

Linuxだとするとgnuのdateコマンドが使えるので割と楽。


yyyymmdd の形式の通常ファイルが存在しないと前提でいいですよね。

cd /どこそこ/TEST
for i in *
do if test -f "$i" #通常ファイル(ディレクトリ以外)なら
then day=`date +%Y%m%d -r "$i"` #更新日をyyyymmdd形式で得る
test -d $day || mkdir $day #その名前のディレクトリがなければ作る
mv "$i" $day #移動
fi
done
    • good
    • 0

「シュルの作成」というと、bshとかcshとかコマンドプロンプトとかそのものを作るってことになっちゃいますが?



おそらく、シェルスクリプトのことだと思います。

お使いのOS,使用したいシェルの種類を明記してください
それが無いと、どんなコマンドが使えるかわかりません。

この回答への補足

すみません。

UNIXだとどうなりますか?

シェルの種類ですが、シェルについて詳しくないので
実現できるシェルでいいです。

よろしくお願いします。

補足日時:2010/02/21 23:49
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!