sql >> データベース >  >> RDS >> Oracle

Wiresharkで印刷可能なテキストのみ(またはその他のパケットプロパティ)をエクスポートする方法

    ついにこれを行うために離れて見つけました。まず、tnsパケットをキャプチャするtsharkを使用します:

    tshark -R tcp.port==1521 -T fields -e data.data -d tcp.port==1521,tns > input.txt
    

    次に、以下の自作のRubyスクリプトを使用して、バイトからテキストに変換できます。

    file = ARGV[0]
    print_all = ARGV[1]
    
    File.open(file, "r").each {|line|
      line.gsub(",", ":").split(':').each {|byte|
        chr = Integer('0x' + byte).chr
        print chr if ((' '..'~').include?(chr) or chr == "\n") or (print_all.downcase == 'all' if print_all)
      } if !line.chomp.empty?
    }
    

    例:

    encode.rb input.txt > output.txt
    

    印刷可能なテキストを入力から出力にのみエクスポートします

    encode.rb input.txt  all > output.txt
    

    すべてのテキストを入力から出力にエクスポートします



    1. 多数の行を小さなクエリに分割しますか?並列性

    2. mysqlの遅いクエリ

    3. 多言語データベース設計のベストプラクティス

    4. MySqlREPLACEINTOに相当するdb2