2017-10-21 96 views
1

私はこのバッチスクリプトのことを初めて知りましたが、本当にそれに入っています。私は、バッチスクリプトを使用して、タイムスタンプと共に.txtファイルに一定のping結果を出力していましたが、代わりに.xlsxに出力したいと思います。これは私が使っているスクリプトです。出力バッチの結果をExcelに

@echo off 

title Google Ping 

mode 12,1 

:start 

set DT=%date:/=-% 

timeout /t 30 

echo %time% %date% >> C:\Users\Bradley\Desktop\Logs\google_log%DT%.txt 

ping -n 1 8.8.8.8 >> C:\Users\Bradley\Desktop\Logs\google_log%DT%.txt 

goto start 

ご協力いただければ幸いです。

答えて

0

私は非常に似たようなことをしています。その後、

C: 
cd\Users\garys\Documents\My Spreadsheets 
dir /s /b > %userprofile%\Desktop\directry\SpreadsheetFiles.txt 

としてExcelにそれを得る::材料はヘッダの上部の余地を残して、コラムCになり

Sub GetData() 
    Dim s As String, Textline As String, i As Long 
    Dim RC As Long 

    s = Application.GetOpenFilename() 
    RC = Rows.Count 
    Range("B2:F" & RC).Clear 
    Range("A2:A" & RC).ClearContents 

    Close #1 
    Open s For Input As #1 

    i = 2 
    Do While Not EOF(1) 
     Line Input #1, Textline 
     Cells(i, "C").Value = Textline 
     i = i + 1 
    Loop 
    Close #1 
End Sub 

私はと .txtファイルを作成します。

1

純粋なバッチファイルを使用してExcelファイルを読み書きする方法はありません。あなたはVBScriptとPowershellでそれを行うことができます。しかし、私が感じる最も簡単な選択肢は、単にCSVファイルに書き出すことです。通常、CSVファイルのデフォルトはExcelで開きます。

@echo off 
title Google Ping 
echo date,time,ip,bytes,pingtime,ttl>pinglog.csv 

:begin 
FOR /F "tokens=3-6 delims=: " %%G IN ('ping -n 1 8.8.8.8^|find /i "reply from"') DO (
    SET ip=%%G 
    SET %%H 
    SET ping%%I 
    SET %%J 
) 
>>pinglog.csv echo %date%,%time%,%ip%,%bytes%,%pingtime%,%TTL% 
timeout /t 10 >nul 

GOTO begin 
関連する問題