2012-01-07 4 views
1

デスクトップ上にいくつかのアイコンを隠すスクリプトを作成しようとしています。コマンドプロンプトで行ごとに実行すると動作しますが、cmdで* .batファイルを実行すると、「attributesiはこの時点で予期しなかったことです」と表示されます。デスクトップアイコンを隠すためのバッチスクリプト

set address=file.ext 
set attributes=attrib %address% 
for /F "tokens=*" %i in ("%attributes%") do set var=%i 
set var=%var: =% 
if %var:~1,1%==H (attrib -H %address%)else (attrib +H %address%) 

答えて

1

はこれを試してみてください:バッチファイルで実行すると

for /F "tokens=*" %%i in ("%attributes%") do set var=%%i 

ザ・ループのための変数ではなく%の%%必要 はここのコードです。しかし、コマンドラインから、%はうまく動作します。

バッチファイルに関する追加のヘルプが必要な場合は、Rob van der Woude's pages on batch file scriptingを確認する必要があります。これは、情報を見つけるのがますます困難になっている、言語上の非常に豊富なリソースです。

私はPowershellスクリプトがDOSバッチファイルスクリプティングに大部分(そして正当な理由で)置き換えられていると言わざるを得ない。 DOSのバッチファイルでできることはほとんどありません。Powershellスクリプトで簡単に実行できるようになりました。より多くのWindowsベースのスクリプト作成を計画しているかどうかを確かめる価値があります。

+0

これは何もしません – Supuhstar

関連する問題