Script batch Menerbitkan jalur yang lewat sebagai parameter dengan spasi [duplikat]

0

Pertanyaan ini sudah ada jawabannya di sini:

go.bat

@echo off

set url=D:\Download\Path with space inside

echo "%url%"

pause

keluaran:

C:\Users\Admin\Desktop>go
"D:\Download\Path with space inside"
Premere un tasto per continuare . . .

jika saya melewatkan parameter seperti ini:

C: \ Users \ Admin \ Desktop & gt; go D: \ Unduh \ Path dengan spasi di dalamnya

@echo off

set url=%~1

echo "%url%"

pause

outputnya salah: jalurnya salah

C:\Users\Admin\Desktop>go D:\Download\Path with space inside
"D:\Download\Path"

tolong bantu: D

Frontender
sumber

Jawaban:

0

Dengan file batch ini

@echo off

set url=%~1

echo "%url%"

pause

Anda harus melewati jalur di ""

C:\Users\Admin\Desktop>go "D:\Download\Path with space inside"

perintah dengan outputnya adalah: -

C:\Users\Admin\Desktop>go "D:\Download\Path with space inside"
"D:\Download\Path with space inside"

Tolong beri tahu saya jika ini berhasil.

Harbinder Singh
sumber
Apakah Anda melihat bagaimana hasil edit saya membuat tulisan Anda lebih jelas? Anda menulis hal-hal seperti 'Anda harus melewati jalur di ""' maka Anda menunjukkan perintah dengan file batch, meletakkan file batch di sana tidak jelas. Dan setelah Anda menulis perintah, Anda menulis "output akan", lalu Anda menulis perintah dengan outputnya. Saya membuat teks penjelasan Anda mengatakan "perintah dengan outputnya akan". Itu lebih jelas. Dan Anda harus menghapus jawaban Anda yang lain. Sebenarnya Anda bisa mengedit jawaban Anda sebelumnya alih-alih memposting jawaban baru.
barlop
Barlop Terima kasih telah mengedit posting saya. Saya telah menghapus jawaban yang lain :).
Harbinder Singh
solusi terakhir Anda tidak berfungsi jika parameter dilewatkan dengan sendto - & gt; go.bat dengan menu konteks dalam file atau folder. saya memperbaikinya sendiri dengan set url =% ~ dpnx0 alih-alih url =% ~ 1
Frontender