Разве это не сработает?
set /p id="Enter Username: " set location="C:\users\%id%\Desktop" echo %location%
Если я не понимаю ваш вопрос.
у меня есть код ниже, который открывает cmd и создает несколько разреженных файлов, используя ввод пользователя, чтобы заполнить некоторые пробелы. мне кажется, что я не могу сделать так, чтобы в коде была строка с именем C: \ users \ user name \ desktop..что я хочу, чтобы можно было легко вставить этот C: \ users \ user имя \ рабочий стол ", тогда попросите пользователя заполнить раздел" имя пользователя ", есть идеи, как мне это сделать? Я попытался ввести эхо, а затем использовать команду стрелка вверх, чтобы скопировать строку, но это не сработало, так что надеюсь, что вы, ребята, есть что-то проще, спасибо
@echo off :start COLOR 9B TITLE Batch File Creation echo ************************ echo * SPARSE FILE CREATION * echo ************************ echo Standard File Sizes: echo - 5mb = 5000000 bytes echo - 10mb = 10000000 bytes echo - 15mb = 15000000 bytes echo - 20mb = 20000000 bytes echo - File types can be any e.g. (xls, xlsx, jpg, png, doc, etc) echo ************************ echo. echo. echo. echo desktop path location is "c:\users\*your user name*\Desktop" set /p _path=Enter the file Path : set /p fname=Enter the Filename (e.g. test.xls) : set /p fsize=Enter the filesize (in Mb) : set /a sizeinbytes=fsize*1000*1000 fsutil file createnew %_path%\%fname% %sizeinbytes% fsutil sparse setflag %_path%\%fname% fsutil sparse setflag %_path%\%fname% 0 %sizeinbytes% echo %fname% File Created!! set /p _new=Would you like to create another file? [y]es, [n]o: If /i "%_new%"== "y" GOTO :start Else end end
Разве это не сработает?
set /p id="Enter Username: " set location="C:\users\%id%\Desktop" echo %location%
Если я не понимаю ваш вопрос.
Затем попросите пользователя заполнить раздел «имя пользователя», чтобы узнать, как мне это сделать.
Вам не нужно делать это вообще. Профиль пользователя уже доступен в USERPROFILE
переменной окружения:
> echo %userprofile% C:\Users\DavidPostill
Это путь к профилю, и он уже содержит имя пользователя для текущего пользователя.
Так что в вашем командном файле заменить
echo desktop path location is "c:\users\*your user name*\Desktop"
С:
echo desktop path location is "c:\users\%userprofile%\Desktop"
Пожалуйста, прочитайте переменные окружения, чтобы увидеть, какие другие полезные переменные уже установлены для вас.