В Linux ми можемо зайти додому користувача, ввівши ~
символ tilde ( ) після cd
:
cd ~
Як зробити те саме в Windows?
Щоразу мені потрібно вводити:
cd C:\Document and Settings\freewind
Це занадто нудно.
В Linux ми можемо зайти додому користувача, ввівши ~
символ tilde ( ) після cd
:
cd ~
Як зробити те саме в Windows?
Щоразу мені потрібно вводити:
cd C:\Document and Settings\freewind
Це занадто нудно.
Відповіді:
cd /d "%HOMEDRIVE%%HOMEPATH%"
зробив би це, але я не впевнений, чи вважаєте ви це вдосконаленням.
Ви також можете визначити псевдонім для вищевказаної команди:
doskey cdhome=cd /d "%HOMEDRIVE%%HOMEPATH%"
Після цього це просто cdhome
.
~
.
Ви можете використовувати, cd /d %USERPROFILE%
якщо ви використовуєте cmd.
або ви можете використовувати, cd ~
якщо ви використовуєте PowerShell.
c:\documents and settings\...
, пробіли будуть порушені, якщо не буде цитовано)
cd
є винятком. Оскільки він завжди бере єдиний аргумент, цитувати не потрібно. (У Windows програми та вбудовані модулі повинні самі розбирати свій командний рядок, оболонка не робить цього.) Завжди цитування шляхів - це хороша практика.
cmd.exe
сам та його дурний /c
.
/c "C:\foo bar\baz" "my file.txt"
чи /c "\"C:\foo bar\baz\" \"my file.txt\""
чи /c ""C:\foo bar\baz" "my file.txt""
? Що ще гірше - те, що синтаксичний аналіз залежить від того, чи /s
було зазначено раніше, наявності спеціальних символів, чи буде C:\foo bar\baz
C:\foo
Однією з можливостей є використання subst
команди з командного рядка:
subst z: C:\Document and Settings\freewind
Кожен раз, коли ви переходите до диска Z:, ви переглянете свою папку користувача.
Мінус полягає в тому, що вам потрібно запускати його щоразу, коли ви входите в систему. Я використовував пакетний файл і просто поміщав його в свою папку запуску, але, мабуть, є більш елегантні рішення для цього.
Перевага полягає в тому, що на відміну від псевдоніма doskey він працює універсально (провідник Windows, діалогове вікно перегляду тощо), а не лише при зміні каталогів у командному рядку. Це особливо корисно для старих програм зі старими діалогами перегляду, які мають букви диска на найвищому рівні, а не "робочий стіл".
Ви можете створити пакетний файл, який називається ~.bat
містить
@echo off
cd /d %USERPROFILE%
І додайте його до змінної PATH (Пуск -> [клацніть правою кнопкою миші на "Комп'ютер"] -> Властивості -> "Розширені налаштування системи" [у лівому стовпці] -> "Змінні середовища"
Звідти просто відредагуйте змінну PATH, щоб включити папку, що містить ваш ~.bat
файл. (Це дозволяє викликати свій скрипт з будь-якого місця, використовуючи лише ім’я файлу - не абсолютний шлях до файлу)
Також переконайтеся, що PATHEXT
змінна середовища містить .BAT
десь (це дозволяє вводити ~
замість ~.bat
).
Коли вам потрібно використовувати його, просто введіть ~
у командному рядку. Це рішення є стійким - вам не доведеться його встановлювати кожен раз, коли ви запускаєте оболонку, і вам не потрібно буде зламати ваш реєстр.
На жаль, я не знаю про ідеальне рішення, але є кілька варіантів:
Варіант 1: Встановити ~ як псевдонім команди з doskey
doskey ~=cd /d %USERPROFILE%
Це дасть вам змогу просто набрати ~
та додати chdir до вашого homedir.
C:\>~
C:\Users\a>
Очевидно, це скорочує кількість натискань на клавіші, щоб повернутися додому (навіть порівняно з Linux), але є менш надійним, оскільки ви не можете реально використовувати його як частину іншого шляху або зробити багато з ним, крім простого домашнього cd'ing.
Варіант 2: Встановити ~ бути змінною
Ще один варіант, якщо ви хочете більш надійний варіант - встановити var:
set ~="%USERPROFILE%"
але це використовуватиметься так:
E:\>cd /d %~%
C:\Users\a>
Його також можна вводити в більшість шляхів і не обмежує вас просто вдома.
Обидва варіанти одночасно
Також ви можете реалізувати обидва способи одночасно. Якщо у вас навколо нього%, то він буде використовувати змінну - інакше вона буде розглядатися ~
як команда.
C:\>:: ECHO (display) THE VALUE OF %~%
C:\>echo %~%
C:\Users\a
C:\>:: ChDir to ~\DESKTOP
C:\>cd /d %~%\Desktop
C:\Users\a\Desktop>:: USE THE ~ COMMAND
C:\Users\a\Desktop>~
C:\Users\a>
Ще одна порада (начебто пов’язана):
Це менш ймовірно, що це можна прийняти на корпоративній машині, принаймні на домашньому ПК, щоб зберегти додаткові натискання клавіш, це не погана ідея, щоб ваш %USERPROFILE%
директор був простим ім'ям. Як ви бачите з моїх прикладів вище, мій користувальницький C:\Users\a
рейтинг - я завжди мав "aplocher" або "adamp", і коли я перейшов на одну букву, це було магічно.
Використовуючи PowerShell, ви можете спробувати наступний метод для навігації в каталогах з будь-якого місця, якщо ви знаєте своє ім’я користувача та надано дозволи файлових файлів.
cd \..\Users\yourUserName\Documents
cd \..\Users\yourUserName\Downloads
cd \..\Users\yourUserName\Desktop
cd \..\Users\yourUserName\music
Дивіться приклад нижче в PowerShell (64bit). Я перевірив це на 64-бітній коробці Windows 7 Pro.