GUI版できました。
inon3135/CopyWithLog
コピー先、コピー元をリスト化したい!
ポスターや論文なんかでデータを可視化したとき、貼り付ける画像ファイルは
ドキュメントファイルと一纏めにしておきたいです。
でもそのファイルをみながら**「このデータどれだっけ?」**なんてのはザラ。
だからファイルをコピーしたとき、コピー元とコピー先をそれぞれのフォルダにログファイルとして生成する
コピースクリプトを書いてみました。
こちらから
https://codebreak.com/git/nozomu/CopyWithLog-python/tree/master/
使い方
Usage:
copy.py [--symbol] -s <source> -o <mirror>
copy.py [--symbol] -o <mirror> -s <source>
copy.py -h | --help
copy.py --version
Options:
-h -help Show this screen.
-version Show version.
--symbol Make mirror file as symboli link file.
-s Set source file
-o Set mirrored file (or directory)
$ copy.py --symbol -s a.png -o $POSTER/fig1.png
copy.pyのあるディレクトリを$PATHに追加するか、pathを記述する必要があります。
a.png を $POSTER/fig1.png にコピーし、それぞれにログファイルを生成 (あるいは追記) します。
--symbolオプションだと、コピーファイルはsymbolic linkとして生成されます。
~, 環境変数 ($name, ${name}) が利用できます。
<mirror> (コピー先) でファイル名を指定せず、ディレクトリパスの場合、
<source> と同名のファイルが生成されます1。
log file形式=Markdown2
logfile: mirror-log.md
logfile: source-log.md
[source-log.md]: maked on mirror directory
File name | source-path | copied date
--- | --- | ---
filename | path | date
[mirror-log.md]: maked on source directory
File name | mirror-file-path | copied date
--- | --- | ---
filename | path | date
コピー元、コピー先にそれぞれmirror-log.mdとsource-log.mdというファイルを生成します。
複数回コピーがあると、ログは追加されていきます。
ログは基本的にFile名のabc順 (大文字小文字区別なし) に並びます。
基本的にコピーは警告なく上書きされます。
また、同じコピー元、コピー先で複数回処理を行っても、すべての履歴がログに残ります。
(ファイルのアップデートは検出しません。)
拡張するかも機能
ログファイルの管理をする機能が必要かもしれない。
現状、ファイルが無くなったりして意味がなくなったログファイルなんかがあっても
手動でしか消すことができない。
それだとちょっと面倒かも。
いいわけ
適当に書いたからソースはひどいもんです。