こんにちは、私は私の小さな猫の写真を取り戻したいです


9

注意:状況で提示されたものはすべて完全に偽物であり、チャレンジをもう少し楽しくするためにここに配置されました;)...または多分;)


=== ===送信の開始=== ===

こんにちは、
最近ディスク障害が発生しました。うまくいけばバックアップがあり、今は写真を取り戻したい。ただし、私が住んでいるパラレルユニバースでは、すべてのバックアップが破損しているように見えます。しかし、ユーザーがファイルを見つけるのに役立つ特別なツールがあったので、それは問題ではありません。それらはあなたのものと少し似ており、画像のように見えるヘッダーをディスクの周りで探します。彼らはまだベータ版であるため、ソフトウェアは見つけた画像を復元し、ランダムな名前を付けて、以下を含むリストを出力します。

  • 写真を撮ったカメラのモデル、または-入手できない場合はシングル。モデルにはスペースを含めることができますが、スペースを含めることはできません-

  • タブ文字(\t、ASCII 9)

  • 写真ファイルの名前。

ファイルは標準のテキストファイルで、次のようになります。

[...]
-   uyfeiebsvH.jpg
-   hv754ce758.gif
-   8321214736.jpg
-   FgnvsfHJBs.jpg
-   OMGILOVYOU.jpg
-   HElloDearH.png
-   umanHAYYSG.jpg
COOLCAM S1332   umanIAYYSG.jpg
iCell 7G    1234567890.jpg
[...]

ファイルは非常に大きく、モデルがあるすべてのファイルを別のディレクトリに移動するために、小さなUbroを使用することはできません。


親愛なる人間、私はあなたの助けが必要です。カメラに関するデータが含まれているすべての写真を別のディレクトリに移動してほしいので、このアイコンの混乱、スクリーンショットから私のかわいい猫の写真を見つけることができました...

ただし、これらのバックアップはMy LiquidStateDrive46Xで実行されているため、十分な空き領域がありません(実際にインターネットをダウンロードしているので、他の何かをダウンロードするのは困難です。かろうじてウェブをサーフィンし、あなたが私が見つけた唯一の人、人間です!)

そんな風に生きさせないで!私のために機能する小さなプログラムを書いて、ウブロを少し節約してください。


  • これはコードゴルフなので、最短のプログラムが勝ちます

  • 私はあなたのプログラムHUMANを起動できるようにする必要があります!そのため、プログラムに既存のインタープリターがあることを確認してください。

  • リストファイルは、スクリプトを起動したディレクトリにあると期待できます。./list.txtという名前になります

  • 画像を./withmodel/に移動する必要があります

  • 復元されたすべての画像は、プログラムを起動した場所と同じディレクトリにあります

  • 彼の名前に-を含む画像はありません。カメラモデルにも同じことが言えます

  • 単純な関数ではなく、実際のプログラムである必要があります。

  • インターネットにアクセスできません。ダウンロードしています!これは本当に重要です。

  • 猫の画像がすぐに必要な場合、または生き残れない場合:このコードゴルフは、この日にまだ生きている場合、10月10日に終了します。

=== ===送信終了=== ===


チャレンジが投稿されるまでに通訳がいる言語ならどれでも使用できるため、標準的な抜け穴のように見えます。私はこれをあまり制限したくない...
WayToDoor

わかりました。私の考えでは、その行をもう少し明確にするために編集しました。気に入らない場合は、元に戻してください。
FryAmTheEggman 2015年

3
それはpuuuurfectです;)!ありがとうございます!
WayToDoor 2015年

答えは出ましたが、何か足りないのかな。なぜかもしれないこのようなニーズインターネットアクセスは?ディスクに十分な空き容量がないことが重要ですか?これは重要ですか?「モデルがあるすべてのファイルを別のディレクトリに移動するために、小さなUbroに頼ることはできません」?
TessellatingHeckler、2015年

これはインターネットを必要としません。念のためにルールを追加しました...ディスクに十分な空き領域がありません=>可能な限り短いプログラムを記述してください。そして、ウブロは純粋なストーリーテリングであり、それは重要ではありません
WayToDoor

回答:


9

PowerShell(v4)、58 49バイト

(gc list.txt)-replace"^[^-]*`t"|mv -des withmodel


# Previous 58 byte version
(gc list.txt)-notmatch'^-'-replace".+`t"|mv -des withmodel
  • リストの内容を取得
  • カメラモデルを何もないものと交換して、タブまで削除します。これは「-」で始まる行を変更しません。
  • 移動コマンド、宛先フォルダー「withmodel」にパイプします。これは、「-」で始まる変更されていない行の多くのエラーにヒットしますが、ファイルに名前に「-」が含まれていないため、不適切なファイルは移動されず、正しいファイルのみが移動されます。

2
神聖ながらくた...私はほとんど同じものを持っていました。最後に、PowerShellがほぼ設計されている課題で、少し遅すぎました。+1を持っている。
AdmBorkBork 2015年

1
@TimmyD確かに; ゴルフには特に適していませんが、 "-replace"と "| mv"が一度に複数のことを処理できるため、これは最も強力な領域の1つになっています。
TessellatingHeckler、2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.