regedit 에서 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
에서 새로운 문자열 값 을 AutoRun으로 만들고 값은 %USERPROFILE%\alias.cmd
로 생성한다.
%USERPROFILE%\alias.cmd
에는 아래와 같이 사용할 alias를 지정한다.
@echo off
DOSKEY clear=cls
DOSKEY pwd=cd
DOSKEY which=where $*
DOSKEY ca=conda activate $*
DOSKEY rm=del
DOSKEY mv=move
set LS_OPTIONS=-b --color=auto
혹여나 Windows에서 ls
와 같은 명령어를 사용하고 싶은 것이라면 아래의 방법을 사용하면 된다.
https://u-tools.com/msls 에서 압축해제한 프로그램을 C:\Windows\System32
에 넣으면 된다.
https://github.com/TwiN/cat-for-windows
http://stahlworks.com/dev/?tool=zipunzip
https://gnuwin32.sourceforge.net/packages/gzip.htm
https://gnuwin32.sourceforge.net/packages/sed.htm
sed의 dependelcy dll들은 SysWOW64에 있어야 한다.
https://eternallybored.org/misc/wget/
아래의 2개의 파일을 head.cmd
, tail.cmd
로 만든 후 C:\Windows\System32
경로 밑에 넣어준다.
@echo off
:: Windows head
:: example command: head -5 test.txt
setlocal enabledelayedexpansion
:: -5 에서 앞의 한자리를 제거
set param1=%1
set num_lines=!param1:~1!
:: file을 절대경로로 변경
set param2=%2
for %%I in ("%param2%") do set "file_path=%%~fI"
:: head 출력
powershell -Command "Get-Content -Path '%file_path%' -Encoding UTF8 | Select-Object -First %num_lines%"
endlocal
@echo off
:: Windows tail
:: example command: tail -5 test.txt
setlocal enabledelayedexpansion
:: -5 에서 앞의 한자리를 제거
set param1=%1
set num_lines=!param1:~1!
:: file을 절대경로로 변경
set param2=%2
for %%I in ("%param2%") do set "file_path=%%~fI"
powershell -Command "Get-Content -Path '%file_path%' -Encoding UTF8 -tail %num_lines%"
endlocal
https://www.vim.org/download.php 에서 아래 파일을 받아 설치해준다.
그리고 vim.exe를 찾아보면 대충 C:\Program Files\Vim\vim91
에 있을텐데 이를 환경변수 path에 추가해준다.
HOME
: %USERPROFILE%
Prompt 변경을 하고 싶다면 alias.cmd를 이용해야 하는데 좀 번거롭다.
번거로운 이유는 Anaconda Prompt도 고려했기 때문이다.
:: alias.cmd
@echo off
DOSKEY clear=cls
DOSKEY pwd=cd
DOSKEY which=where $*
DOSKEY ca=conda activate $*
set LS_OPTIONS=-b --color=auto
::====
set "extension=.txt"
set "datetime=%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,2%"
set "datetime=%datetime: =0%"
set "datetime=%datetime::=-%"
set "datetime=%datetime:.=%"
set "temp_file=%TEMP%\%datetime%%extension%"
call prompt.cmd %temp_file%
set /p "PROMPT_ARGS="<"%temp_file%"
PROMPT %PROMPT_ARGS%
@echo off
setlocal enabledelayedexpansion
set "default_prompt=%USERNAME%@%COMPUTERNAME%:$P$$$S"
if defined CONDA_DEFAULT_ENV (
set "command=(%CONDA_DEFAULT_ENV%)"
) else (
set "command="
)
echo !command! !default_prompt! > %1
endlocal
https://stackoverflow.com/questions/20530996/aliases-in-windows-command-prompt/21040825#21040825
https://gist.github.com/carlessanagustin/266171818584b3880f72a625dfa2513b
https://sourceforge.net/projects/unxutils/
정상 비슷하게 작동
echo.exe
wc.exe
cp.exe
tee.exe
돌아가긴 함.
du.exe # du -sh * 은 안돌아가고 du -sh test 와 폴더를 지정하면 가능.
사용이 어려움
wget.exe # SSL 문제 발생 # bin/wget.exe 는 동작하지 않지만
System32에 넣어둔 6.71메가 wget은 동작한다.
find.exe # 엑세스 거부 현상 발생
df.exe # 그냥 사용이 안댐
하위디렉토리까지 검색
dir /s /b *.whl