私は「勝利」した60枚のゲームカードをサンプリングしました。これそしてカードを引きます。名前そして計算一部のソフトウェアで使用できるようにフォーマットします。出力滞在例:
.<ID><タブ>計算<タブ>名前
ステップ1
私は以下を使用してエピソードのテキストバージョンから始めました。協会ページ(横)で確認可能印刷)データ(スペースで区切られた2つの列)を保持して削除します。食器棚カード。
ステップ2
各カード名に対してセミコロンで区切られたカード属性のリストを含むローカルファイルを検索し、list
2番目のフィールドのカード名と一致して最初のフィールドを抽出します。ID番号そのカードの場合(最初のフィールドのみが重要なので、ここでは行数を減らしました):
ID;Full Name;...
0;Air Elemental;1;Air Elemental;0800h;;;;;;;
1;Ancestral Recall;1;Ancestral Recall;0800h;;;;;;;;
2;Animate Artifact;1;Animate Artifact;0800h;;;;;;;
...
10780;Jace, the Mind Sculptor;1;Jace, the Mind Sculptor;0008h;;;;;;;;
10871;Aura Finesse;0;Aura Finesse;0008h;;;;;;;
...その後、各行の前に次を付けます。ステップ1そして。 ID、3つの列がテーブルで区切られていることを確認してください。決勝出力ファイルは次のとおりです(ヘッダー部分は気にしません)。
;MY1 - Shardless BUG - #1
;
;User
;User E-Mail
;28/08/2014
;1
;4th Edition
;
.12516 2 Baleful Strix
.12533 4 Shardless Agent
.12700 4 Deathrite Shaman
.9038 4 Tarmogoyf
.10780 2 Jace, the Mind Sculptor
.12004 2 Liliana of the Veil
.12 2 Bayou
.10747 2 Creeping Tar Pit
.12645 4 Abrupt Decay
.1547 4 Brainstorm
.2285 3 Force of Will
.1456 1 Hymn to Tourach
.13650 1 Toxic Deluge
.9286 3 Thoughtseize
.239 1 Swamp
.1486 4 Polluted Delta
.258 3 Underground Sea
.10706 4 Verdant Catacombs
.3329 2 Wasteland
.1 4 Ancestral Recall
.10612 2 Misty Rainforest
.252 2 Tropical Island
上記のソースを考えるとテキストファイルとlist
ファイル、必要な出力ファイルを生成する方法滞在?
答え1
だから私がしたのは、list
ファイルを最初の2つの値(ID;名前)に切り取り、ソーステキストにこのスクリプトを使用することでした。文書:
#!/usr/bin/env bash
dos2unix "$1"
sed -e '/Sideboard/,$d' "$1" -e '/^$/,$d' | tee source_strip | cut -d ' ' -f 2- >temp
while IFS= read f; do
sed -n "s/\([0-9]*\);$f$/\.\1/p" list
done <temp >IDs
sed -ni 's/^\([0-9]*\) \([a-zA-Z]*\)/\1\t\2/p' source_strip
paste IDs source_strip > final
cat final
もちろん、これは次のことを前提としています。ID番号すべての名前検索が存在します。それ以外の場合は正常に動作しません。もちろん、これを行うよりエレガントな方法がありますが、この場合は効果的です!