Когда я создаю командный файл на моем компьютере, чтобы выполнить start c:\Users\________\Whatever\...
, он работает на моем компьютере.
Как я могу заставить его работать на чужой машине, так как их имя пользователя не мое имя пользователя?
Когда я создаю командный файл на моем компьютере, чтобы выполнить start c:\Users\________\Whatever\...
, он работает на моем компьютере.
Как я могу заставить его работать на чужой машине, так как их имя пользователя не мое имя пользователя?
Вы можете использовать переменную среды %USERPROFILE%
. Это работает с Windows XP и выше, и автоматически определяет букву диска и путь к папке профиля текущего пользователя.
start %USERPROFILE%\Whatever
Вы можете использовать переменные среды Windows. В этом случае вы можете использовать %username%
, который возвращает имя текущего пользователя.
то есть:
start c:\users\%username%\Whatever
Дополнительно / альтернативно, если вы специально нацелены на папку профиля пользователя (<drive>:\users\<username>
), вы можете использовать переменную %userprofile%
, которая будет возвращать полный путь к профилю текущего пользователя, что помогает при нацеливании на более старые ОС, такие как XP (где по умолчанию это <drive>:\document and settings\<username>
), или когда папка профиля была перемещена на другой диск / в другое место.
то есть:
start %userprofile%\Whatever
Там есть несколько других переменных, которые могут оказаться полезными при написании пакетов, я бы посоветовал просмотреть весь список. :)