Open3

20241015

りゅーぺりゅーぺ
Sub CopyToClipboard()
    ' アクティブセルの値を変数に格納
    Dim cellValue As String
    cellValue = ActiveCell.Value
    ' クリップボードにコピー
    With CreateObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
        .SetText cellValue
        .PutInClipboard
    End With
    MsgBox "セルの値 '" & cellValue & "' がクリップボードにコピーされました。"
End Sub
りゅーぺりゅーぺ
コード
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class RandomStringGenerator {
    public static void main(String[] args) {
        List<String> randomStrings = generateRandomStrings(1000, 10);
        
        // 生成した文字列を確認(最初の10件を表示)
        for (int i = 0; i < 10; i++) {
            System.out.println(randomStrings.get(i));
        }
        
        System.out.println("合計: " + randomStrings.size() + "件の文字列を生成しました。");
    }
    
    /**
     * 指定された数のランダム文字列を生成する
     * @param count 生成する文字列の数
     * @param length 各文字列の長さ
     * @return ランダム文字列のリスト
     */
    public static List<String> generateRandomStrings(int count, int length) {
        List<String> result = new ArrayList<>(count);
        Random random = new Random();
        
        // 使用する文字のセット
        String characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
        
        for (int i = 0; i < count; i++) {
            StringBuilder sb = new StringBuilder(length);
            for (int j = 0; j < length; j++) {
                // ランダムな文字を選択
                int randomIndex = random.nextInt(characters.length());
                sb.append(characters.charAt(randomIndex));
            }
            result.add(sb.toString());
        }
        
        return result;
    }
}
りゅーぺりゅーぺ

TTLファイルの作り方

  1. テキストエディタ(メモ帳、VS Code、サクラエディタなど)を開きます
  2. 必要なコマンドを記述します
  3. 拡張子を.ttlとして保存します(例:connect_server.ttl)
  4. TeraTermから実行する場合は、メニューの「コントロール」→「マクロ」を選択し、作成したTTLファイルを指定します
コード
; TeraTermマクロ - 踏み台サーバー接続スクリプト
; ファイル名: jumpserver_connect.ttl

; =============== 設定部分 ===============
; 踏み台サーバー情報
jumphost = '192.168.1.100'  ; 踏み台サーバーのIPアドレスまたはホスト名
jumpport = '22'             ; 踏み台サーバーのSSHポート
jumpuser = 'username'       ; 踏み台サーバーのユーザー名
jumppass = 'password'       ; 踏み台サーバーのパスワード

; 接続先サーバー情報
desthost = '10.0.0.100'     ; 接続先サーバーのIPアドレスまたはホスト名
destport = '22'             ; 接続先サーバーのSSHポート
destuser = 'username'       ; 接続先サーバーのユーザー名
destpass = 'password'       ; 接続先サーバーのパスワード

; =============== 接続処理 ===============
; 踏み台サーバーへの接続
connect jumphost jumpport
wait 'login:'
sendln jumpuser
wait 'password:'
sendln jumppass

; ログイン確認
wait '$'

; 接続メッセージを表示
dispstr '踏み台サーバーに接続しました'
dispstr '接続先サーバーへ接続中...'

; 接続先サーバーへSSH接続
sendln 'ssh -p ' destport destuser '@' desthost
wait 'password:'
sendln destpass

; 接続先サーバーのプロンプト待ち
wait '$'

; 接続成功メッセージ
dispstr '接続先サーバーに接続しました'

; (オプション)接続先サーバーでの初期コマンド実行
sendln 'cd /path/to/work/directory'
wait '$'
sendln 'ls -la'
wait '$'

messagebox '接続が完了しました' 'TeraTermマクロ'

使用方法

  1. 上記のコードをテキストエディタにコピー&ペーストします
  2. 以下の情報を実際の値に書き換えます:
    jumphost:踏み台サーバーのIPアドレスまたはホスト名
    jumpport:踏み台サーバーのSSHポート(通常は22)
    jumpuser:踏み台サーバーのユーザー名
    jumppass:踏み台サーバーのパスワード
    desthost:接続先サーバーのIPアドレスまたはホスト名
    destport:接続先サーバーのSSHポート
    destuser:接続先サーバーのユーザー名
    destpass:接続先サーバーのパスワード
  3. ファイルを.ttl拡張子で保存します(例:jumpserver_connect.ttl)
  4. TeraTermを起動し、メニューから「コントロール」→「マクロ」を選択
  5. 保存したTTLファイルを選択して実行します

補足説明

wait コマンドは指定された文字列が表示されるまで待機します
sendln コマンドは文字列を送信し、最後に改行を追加します
dispstr コマンドはTeraTermのステータスバーにメッセージを表示します
messagebox コマンドはメッセージボックスを表示します

セキュリティ上の理由から、実際の環境ではパスワードをスクリプト内に直接記述せず、実行時に入力を求めるように修正することをお勧めします。その場合は以下のようなコードを使用できます: