0

そのため、ファイルの1行をエコーするのに問題があります。コードは次のとおりです。

IF NOT EXIST "%rutaSteamIdle%\tf2idle.ini" (
(
ECHO [Settings]
ECHO steam_location = C:\Program Files (x86)\Steam
ECHO secondary_steamapps_location = 
ECHO sandboxie_location = C:\Program Files\Sandboxie
ECHO api_key = 02FE9AB5998EA5F8A3E0DA7C4C47F3C7
ECHO backpack_viewer = Backpack.tf
ECHO launch_options = +exec idle.cfg -textmode -nosound -low -novid -nopreload -nojoy -sw +sv_lan 1 -width 640 -height 480 +map itemtest
ECHO launch_delay_time = 120
ECHO log_file_formatting = {date}, {time}, {itemtype}, {item}, {id}, {account}{nline}
ECHO easy_sandbox_mode = no
ECHO sys_tray_notifications = hats,tools
ECHO close_to_tray = False
ECHO log_web_view = On
ECHO log_web_view_port = 5000
ECHO ui_no_of_columns = 2
ECHO ui_window_size = (1024, 768)
ECHO ui_account_box_font_size = 12
ECHO ui_account_box_icon_size = 40
ECHO ui_account_box_icon = 
ECHO ui_log_entry_toggles = system,hats,weapons,tools,crates
ECHO log_poll_time = 1
ECHO ui_log_background_colour = 000000
ECHO ui_log_font_colour = FFFFFF
ECHO ui_log_font_size = 12
ECHO ui_log_font_family = TF2 Build
ECHO ui_log_font_style = 0
ECHO ui_log_font_weight = 50
ECHO ui_log_font_strikeout = False
ECHO ui_log_font_underline = False
)>>"%rutaSteamIdle%\tf2idle.ini"
)

これを実行すると、「フラッシュ」されます(cmdウィンドウはそれ自体を閉じる前に1秒間開いたままになります)、次のエラーが発生します。

\Steam was unexpected at this time.

ここで何かが足りませんか?私がこのような行を作る場合:

ECHO steam_location = "C:\Program Files (x86)\Steam"

正しくエコーしますが、残念ながらそれは私にはできません。

4

2 に答える 2

1

これは、Steam へのパスに閉じ括弧が含まれているためです。次のようにエスケープする必要があります。

ECHO steam_location = C:\Program Files (x86^)\Steam

cmdのパーサーは、これらのことにはあまり適していません。これは括弧で囲まれたブロック内にあるため、最初のエスケープされていない (または引用されていないがecho、引用符も出力されるため、ここでは引用符は機能しません) 閉じ括弧でブロックが終了します。そして、同じ行のその後の部分は、次のコマンドとして解釈されます。この場合\Steam、エラー メッセージが表示されます。

于 2013-01-29T07:24:49.350 に答える
0

これを試すこともできます...

SET "steam_location=C:\Program Files (x86)\Steam"
ECHO %steam_location%

次のように出力されます

C:>ECHO C:\Program Files (x86)\Steam

C:\Program Files (x86)\Steam

これがうまくいくことを願っています:)

于 2013-01-29T09:30:11.250 に答える