[解決済み] [Solved] バッチファイルのパラメータが空かどうかをテストする適切な方法は何ですか?
2022-04-04 13:35:49
質問
ある変数が設定されているかどうかをテストする必要があります。 いくつかのテクニックを試してみましたが、以下のような場合はいつも失敗するようです。
%1
が引用符で囲まれている場合、例えば
%1
は
"c:\some path with spaces"
.
IF NOT %1 GOTO MyLabel // This is invalid syntax
IF "%1" == "" GOTO MyLabel // Works unless %1 has double quotes which fatally kills bat execution
IF %1 == GOTO MyLabel // Gives an unexpected GOTO error.
によると
このサイト
で、これらはサポートされています。
IF
の構文タイプです。というわけで、方法は見当たりません。
IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command
UPDATE: 2020-10-25に、受理された回答を、括弧を使うことからチルダを使うことに更新しました。 皆さん、チルドの方が安全で良いとおっしゃっています。 しかし、チルダはより複雑に見え、その目的が明確でないため、私は少し悩んだが、それでも変更した。
解決方法は?
使用することができます。
IF "%~1" == "" GOTO MyLabel
で、外側の引用符のセットを削除します。 一般に、この方法は角括弧を使うよりも信頼性が高く、変数にスペースがあっても動作します。
関連
-
[解決済み] Windowsのフラッシュドライブに_disk_id.podというファイルが表示される
-
[解決済み] XAMPP Object not foundエラー
-
[解決済み] シェルで、「2>&1」はどういう意味ですか?
-
[解決済み] バッチファイルに引数を渡すにはどうしたらいいですか?
-
[解決済み] Windowsのバッチファイルから長いコマンドを複数行に分割する
-
[解決済み] バッチファイル内で改行をエコーする方法を教えてください。
-
[解決済み] N日以上前のファイルを削除するバッチファイル
-
[解決済み] バッチファイル実行後にコンソールを自動終了させない方法
-
[解決済み] バッチファイルにおけるカレントディレクトリとは何ですか?
-
[解決済み] バッチファイルでの変数の定義と使用
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Xcopyのエラーメッセージ「Sharing Violation」が誤っている。
-
[解決済み] 0|%0とは何ですか、どのように機能しますか?
-
[解決済み] terasso libraryでUnknown errorが発生し、vbaを使用してteradataに接続できない。
-
[解決済み] xcopyコマンド使用時に "invalid path 0 files copied "というエラーが発生する。
-
Windows2008 スケジュールタスク、エラー追加データ。エラーの値: 2147750687。
-
[解決済み] Cygwinを使用してWindowsにsshpassをインストールする方法は?
-
[解決済み] ファイルパスの前に付ける「୧⃛(๑⃙⃘◡̈๑⃙⃘)୨⃛」は何ですか?
-
[解決済み] CMDでPowerShellを実行する方法
-
[解決済み] Windowsコマンドプロンプトのエイリアス
-
[解決済み] .bat "ファイルのコマンドラインパラメータを確認するには?