Last active
December 10, 2015 10:34
-
-
Save jiunbae/4875adf546999767f400 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @echo off | |
| REM "" | |
| REM "2015-12-08 MaybeS" | |
| REM "" | |
| SET version=1.0 | |
| SET found="" | |
| SET iKey=%1 | |
| SET iPath="" | |
| SET goPath=%~dp0 | |
| IF NOT EXIST "%goPath%go\" ( | |
| mkdir "%goPath%go" | |
| ) | |
| SET goPath=%goPath%go | |
| IF NOT "%1"=="" ( | |
| IF "%1"=="-n" ( | |
| IF "%2"=="" ( | |
| echo must be "%0 -n keyword path" | |
| goto :end | |
| ) | |
| IF "%3"=="" ( | |
| echo must be "%0 -n %2 path" | |
| goto :end | |
| ) | |
| echo %3 > %goPath%\%2 | |
| echo set %2 %3 finished! | |
| ) ELSE ( | |
| IF "%1"=="-l" ( | |
| FOR %%x IN ("%goPath%\*") DO ( CALL :list %%x ) | |
| ) ELSE ( | |
| IF "%1"=="-r" ( | |
| IF "%2"=="" ( | |
| echo must be "%0 -r keyword[to remove]" | |
| ) ELSE ( | |
| IF EXIST "%goPath%\%2" ( | |
| CALL :show %iKey% %goPath%\%2 | |
| echo %iKey% is deleted! | |
| del %goPath%\%2 | |
| ) ELSE ( | |
| echo not exist %iKey% | |
| ) | |
| ) | |
| ) ELSE ( | |
| IF "%1"=="-version" ( | |
| echo go script version %version% | |
| ) ELSE ( | |
| FOR %%x IN ("%goPath%\*") DO ( CALL :token %%x ) | |
| ) | |
| ) | |
| ) | |
| ) | |
| ) ELSE ( | |
| GOTO :view | |
| ) | |
| GOTO :end | |
| :list | |
| SET listkey=%1 | |
| :listloop | |
| FOR /f "tokens=1* delims=\" %%a in ("%listkey%") do ( | |
| IF "%%b"=="" ( | |
| CALL :show %%a %1 | |
| GOTO :listloopend | |
| ) | |
| SET listkey=%%b | |
| ) | |
| IF NOT "%listkey%"=="" GOTO :listloop | |
| :listloopend | |
| GOTO :eof | |
| :show | |
| SET listshow=%1 | |
| FOR /f "delims=" %%a IN (%2) do ( | |
| SET listshow=keyword: %listshow%, path: %%a | |
| GOTO :showprint | |
| ) | |
| :showprint | |
| echo %listshow% | |
| GOTO :eof | |
| :remove | |
| GOTO :eof | |
| :keyfind | |
| SET p=%goPath%\%iKey% | |
| SET found="f" | |
| FOR /f "delims=" %%a IN (%p%) do ( | |
| cd /d %%a | |
| ) | |
| GOTO :end | |
| :token | |
| SET str=%1 | |
| :loop | |
| FOR /f "tokens=1* delims=\" %%a in ("%str%") do ( | |
| IF "%%b"=="" ( | |
| SET str=%%a | |
| FOR /f "tokens=1* delims= " %%a in ("%str%") do ( | |
| IF "%%a"=="%iKey%" ( | |
| GOTO :keyfind | |
| ) | |
| ) | |
| GOTO :loopend | |
| ) | |
| SET str=%%b | |
| ) | |
| IF NOT "%str%"=="" GOTO :loop | |
| :loopend | |
| GOTO :eof | |
| :notFound | |
| ECHO not found keyword: %iKey% | |
| GOTO :end | |
| :view | |
| echo go script version %version% | |
| echo ----------------------- | |
| echo go -n keyword path | |
| echo ">>"then you can use "go keyword" to go path | |
| echo ----------------------- | |
| echo go -l | |
| echo ">>"show keyword: path list | |
| echo ----------------------- | |
| echo go -r keyword | |
| echo ">>"delete keywrod | |
| echo ----------------------- | |
| echo gooooooooooooooooooooo | |
| :end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
go script
go는 윈도우 환경에서 폴더간 이동을 쉽게 하도록 만들어졌습니다.
go.bat을 환경변수 Path에 저장된 경로에 두거나 go.bat이 있는 폴더를 Path에 등록해서
go "keyword" 를 통해 지정된 "path"로 바로 이동할 수 있습니다.
go -n keyword path로 등록하고
go -l 은 등록된 키워드 리스트를 보여주며
go -r keyword는 키워드를 삭제해줍니다.