【備忘録】ちょっとしたメモ書き【備忘録】

自分でやったこと調べてみた事とのメモ書きブログです
主に周辺機器の翻訳した取り説や故障修理の手順を記録しています。

データ処理(SQLite取り込み前のー前処理案)

2023年09月10日 | python?

名前が変わるやつの取り込み例


import re
import os

# ファイル名にマッチする正規表現パターンを指定
file_pattern = r'\d{8}[a-zA-Z0-9]+\.txt'  # 日付とサーバー名を含むファイル名の正規表現

# カレントディレクトリ内のファイルを走査し、正規表現にマッチするファイルを取得
matching_files = [file for file in os.listdir('.') if re.match(file_pattern, file)]

if matching_files:
    # マッチするファイルが存在する場合、最新のファイルを取得
    latest_file = max(matching_files, key=lambda x: os.path.getmtime(x))
    
    # 最新のファイルを開いて読み込む
    with open(latest_file, 'r') as file:
        lines = file.readlines()

    # linesを使ってデータの処理を行うことができます
else:
    print("マッチするファイルが見つかりませんでした")

 

 

 


特定のコマンドを検索してその後の5行を取り出してみるやつ


import glob

# ファイル名にマッチするパターンを指定
file_pattern = 'TeraTermLog_*'  # ファイル名のパターンを設定

# パターンにマッチするファイルの一覧を取得
matching_files = glob.glob(file_pattern)

if matching_files:
    # パターンにマッチするファイルが存在する場合、最新のファイルを取得
    latest_file = max(matching_files, key=lambda x: os.path.getmtime(x))
    
    # 最新のファイルを開いて読み込む
    with open(latest_file, 'r') as file:
        lines = file.readlines()

    # linesを使ってデータの処理を行うことができます
else:
    print("マッチするファイルが見つかりませんでした")

# TeraTermで取得したテキストファイルを開く
with open('teraterm_output.txt', 'r') as file:
    lines = file.readlines()

# 特定のコマンドを探す
target_command = "特定のコマンド"  # 検索したいコマンドを設定
matching_lines = []

for i, line in enumerate(lines):
    if target_command in line:
        matching_lines.append(i)

# 特定のコマンドの後ろから5行を抽出
result_lines = []
for index in matching_lines:
    for i in range(index + 1, min(index + 6, len(lines))):  # コマンドの後ろから5行までを抽出
        result_lines.append(lines[i])

# 抽出した行を表示
for line in result_lines:
    print(line.strip())

 

 

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 番外 Sqlite3でログ(3用)... | トップ |   
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

python?」カテゴリの最新記事