あるパス(例:/home/hogea)の下にあるディレクトリ(フォルダ)を世帯管理したいです。
世帯数は引数でシェルスクリプトに渡して、ディレクトリ(フォルダ)のリネームを行います。
以下はディレクトリをフォルダという意味で使わせて頂きます。
前提としてフォルダ名はあらかじめ決めておく。数字0、1、2…
※0はカレントディレクトリ
(フォルダ名⇒0:カレント 1:カレントより一個古い世帯 2:カレントより2個古い世帯・・・)
・世帯数=フォルダ数の場合(例:2世帯、フォルダも2個(0、1)存在する)一番古いほうのフォルダ(1)を消して、前世帯のフォルダ(0)を1にリネームして、新しいカレントフォルダ0を作る
・世帯数>フォルダ数の場合(例:2世帯、フォルダも1個存在する)古いほうのフォルダ(0)をリネームして、新しいフォルダ(0)を作ります。
・世帯数<フォルダ数の場合(例:2世帯、フォルダも3個存在する)一番古いほうのフォルダと2番目のフォルダを削除して、3番目古いフォルダをリネーム(1)します。新しいフォルダを(0)作ります。
ご経験された方がいらっしゃいましたら参考させて頂きたいと思います。宜しくお願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
スクリプトを下記サイトに書き込みました。
http://climbi.com/b/7792/0
#管理対象ディレクトリ
TRG_DIR='/home/hoge/goo/dirtest'
のところは、あなたの環境にあわせてください。
#デレクトリプレフィックス
PREFIX='XXX'
のXXXは、各ディレクトリの先頭につく名称です。あなたの環境にあわせてください。
各ディレクトリ名はXXX0,XXX1,XXX2のようになります。
もし、各ディレクトリ名を0,1,2,3のようにしたい場合は
PREFIX=''
としてください。
不明点は補足ください。
No.3
- 回答日時:
エラー処理とかを考えなければ
rm -rf 4
mv 3 4
mv 2 3
mv 1 2
mv 0 1
mkdir 0
で、5世代管理になります。
引数で5を与えたら、上のような順番でコマンドを実行するようなスクリプトを作るだけなので、ループと数値計算で簡単にできると思います。
6個以上ディレクトリがあった場合に余分なのを削除、とか
間に抜けてる番号があったら詰める、とか
いうがあるとちょっと面倒ですが。
No.2
- 回答日時:
OSは何でしょうか?
又、どうしてもシェルスクリプトでなければ、いけない理由はありますか?
perl又はrubyでも良いのであれば、そのスクリプトを提示することはできますが・・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Excel(エクセル) フォルダAから1つのファイルだけを、フォルダBへを移動するVBAについて 2 2022/07/25 11:45
- Excel(エクセル) フォルダ階層が深いファイルの拡張子の一括変換 2 2022/12/23 18:40
- Windows 10 ファイルエクスプローラーでフォルダを閉じる操作について 2 2022/10/15 11:06
- Excel(エクセル) 【VBA】フォルダAにある2つのファイルの内1つを、フォルダBへ。もう1つを、フォルダBへ移動したい 6 2022/07/26 08:51
- Visual Basic(VBA) VBプロジェクトでのフォルダ構成について 1 2023/07/22 03:49
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) 2つのマクロを連続して動かしたい 3 2022/09/20 23:46
- Visual Basic(VBA) Excel VBA 同じ名前のフォルダがあれば作成したブックを格納するマクロをつくりたい 2 2023/01/16 16:19
- Excel(エクセル) VBA 最新のフォルダ取得 1 2022/04/15 15:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ディレクトリパスの取得について
-
C# FTPサーバ カレントディレ...
-
月の第一週とは
-
jcode.plが読み込めない
-
エクセルで毎月第2週日の水曜日...
-
VBA。複数のChangeイベントをま...
-
アンケートなどの1日1回の投...
-
DBを10件毎に表示ページング...
-
AccessVBAで「このフィールドに...
-
[Excel] ある日の曜日が当月の"...
-
ftpでのネットワークバイトオー...
-
お台場合衆国の混んでない時間...
-
Excelで第一〇曜日を求める方法...
-
週2回のペースって だいたい何...
-
apacheでPerl CGIが作動せず、5...
-
毎○曜日って、使いますか?
-
cgiとplとpm
-
よくある 『 第○(1・2・3・4・...
-
リストコントロールの列幅を固...
-
ヘッダのinclude順
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで相対パスの書き方を...
-
上位階層のディレクトリパスを...
-
ディレクトリパスの取得について
-
Pythonのstatsmodelsでカルマン...
-
「Movable Type 3.2」のブログ...
-
FORMのFILEでフォルダ(ディレ...
-
cocoa で ユーザーディレクトリ...
-
C# FTPサーバ カレントディレ...
-
Perl の外部モジュールの利用方法
-
SSIで呼び出したURLの取得
-
URIとURLの違いは何ですか?
-
useする自作のモジュールについ...
-
シェルスクリプトで以下のこと...
-
ディレクトリの削除について
-
T_T
-
BBSについて
-
フォルダの移動をおこないたい...
-
ソリューションの名前の変更
-
特定のdirで発行したcookieを上...
-
絶対パス・相対パス・ディレク...
おすすめ情報
そうです。世代数です。誤記で済みません。。。
OS はLinux(Redhatサーバ6.3)です。