Saya perhatikan penggunaan ^&
di:
(robocopy c:\dirA c:\dirB *.*) ^& IF %ERRORLEVEL% LSS 8 SET ERRORLEVEL = 0
Saya bertanya-tanya apa fungsinya?
Saya perhatikan penggunaan ^&
di:
(robocopy c:\dirA c:\dirB *.*) ^& IF %ERRORLEVEL% LSS 8 SET ERRORLEVEL = 0
Saya bertanya-tanya apa fungsinya?
Jawaban:
The ^
simbol adalah escape karakter * di Cmd.exe:
Menambahkan karakter escape sebelum simbol perintah memungkinkannya diperlakukan sebagai teks biasa.
Saat memasang atau mengarahkan ulang salah satu dari karakter ini, Anda harus mengawali dengan karakter escape: & \ <> ^ |
Namun, itu tidak berpengaruh dan sebenarnya tidak perlu dalam perintah Anda. Tampaknya Anda ingin menjalankan perintah IF setelah perintah RoboCopy selesai. Oleh karena itu Anda ingin &
diuraikan sebagai perintah "pemisah perintah", yang memberitahu Cmd.exe untuk memperlakukan pernyataan IF Anda sebagai perintah kedua yang harus dijalankan setelah menjalankan RoboCopy. Akibatnya, perintah ini setara dengan yang Anda gunakan:
(robocopy c:\dirA c:\dirB *.*) & IF %ERRORLEVEL% LSS 8 SET ERRORLEVEL = 0
* Jika ^
karakter terakhir dalam sebuah perintah, maka itu ditafsirkan sebagai karakter kelanjutan perintah .
^
untuk tujuan itu harus karakter terakhir dalam perintah.