フォルダ+サブフォルダを作成するためのAHK

フォルダ+サブフォルダを作成するためのAHK

以下を作成する AHK スクリプトが必要です:

  • Windows エクスプローラーで現在開いているフォルダー内のフォルダー (Windows 7 の場合)
  • その名前は
    • yyyy-mm-dd現在の日付を( )の形式で表す
    • 現在クリップボードにあるテキスト
  • 新しく作成されたフォルダには、「1」、「2」、「3」という名前の 3 つのサブフォルダが含まれている必要があります。

別のアプリケーションからいくつかの単語 (例Testing Testing Testing) をコピーし、ハードディスク上の場所 (Windows エクスプローラーを使用) に移動し、ホットキーを有効にすると、AHK によって次の名前のフォルダーが作成されます。

2012-06-04 Testing Testing Testing

サブフォルダ「1」、「2」、「3」があります。

答え1

スクリプト

#c::
    WinGetClass, WinClass, A
    if (WinClass = "CabinetWClass")
    {
        FormatTime, CurrentDate,, yy-MM-dd
        CustomText = %Clipboard%
        Clipboard = 
        SendPlay, !d^c
        ClipWait, 1
        If ErrorLevel
        {
            MsgBox, Could not read directory name.
            return
        }
        CurrentDir = %Clipboard%
        Clipboard = %CustomText%
        NewDir = %CurrentDir%\%CurrentDate% %CustomText%
        Run, cmd /c (md "%NewDir%" || pause) && md "%NewDir%\1" && md "%NewDir%\2" && md "%NewDir%\3"
    }
    else
        SendPlay, #c
return

使い方

  • #c:: ... returnキーの組み合わせ (ここではWin+ C) を指定し、...押されたときに実行します。

  • WinGetClass, WinClass, A現在アクティブなウィンドウのタイトルを変数に格納しますWinClass

  • if (WinClass = "CabinetWClass") { ... }(Windows エクスプローラーのクラス) でWinClassあるかどうかを確認します。CabinetWClass

    そうであれば、...が実行されます。そうでない場合は、SendPlay, #c通常のWin+Cストロークをエミュレートします。

  • FormatTime, CurrentDate,, yy-MM-dd現在の日付 ( YY-MM-DD) を変数 に格納しますCurrentDate

  • Clipboard =クリップボードをクリアして、何かがコピーされたときにそれをチェックできるようにします。

  • CustomText = %Clipboard%現在のクリップボードの内容を変数にコピーしますCustomText

  • SendPlay, !d^cアドレスバーを選択し、その内容をクリップボードにコピーします。

  • ClipWait, 1クリップボードにデータが含まれるまで最大 1 秒間待機します。

  • If ErrorLevel { ... }クリップボードにデータが含まれているかどうかを確認します。

    そうでない場合、スクリプトは中止されます。

  • CurrentDir = %Clipboard%現在のクリップボードの内容を変数にコピーしますCurrentDir

  • Clipboard = %CustomText%クリップボードを元の値に戻します。

  • NewDir = %CurrentDir%\%CurrentDate% %CustomText%新しいディレクトリの名前を指定します。

  • Run, cmd /c ...コマンドを実行して...終了します。

    • (md "%NewDir%" || pause)を作成しようとします%NewDir%。失敗すると一時停止し、エラー メッセージが表示されます。

    • md "%NewDir%\1" && md "%NewDir%\2" && md "%NewDir%\3"3 つのサブディレクトリを作成します。

関連情報