리눅스의 .bashrc 파일과 동등한 창이 있습니까?


65

방금 doskey emacs = emacs -nw $ *를 발견했지만 .bashrc와 같은 것이 없으면 쉘을 시작할 때마다 입력해야합니다.


1
이 질문 은 동일하지 않지만 대답은 시나리오에 적용됩니다.
Marcelo Cantos

답변:


69

이것은 매우 좋은 질문입니다. 나는 이것을 발견 했다 . cmd 스크립트를 만들어 cmd :-?를 시작할 때 실행할 수 있다고 가정합니다.

; Run a command when CMD.exe starts
[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor]
"AutoRun"=-

편집 : 방금 시도했습니다. 나는 AutoRun=C:\mini\bashrc.cmdbashrc.cmd가

@echo off
set TEST_VAR=something

cmd를 시작하고 입력 echo %TEST_VAR%하면라고 말합니다 something. 그래서 작동합니다 :)


10
내가 사용하는 작은 발췌 문장 : doskey∙♦=exit(where is [char]4). Ctrl + D, Enter를 사용하여 쉘을 닫을 수 있습니다.
Joey

이 작업은 훌륭하고 훌륭합니다 .nc3b.
Robert S Ciaccio

2
HKEY_CURRENT_USER \ Software \ Microsoft \ AutoRun = % HOMEPATH % \ bashrc.bat가있는 명령 프로세서 따라서 모든 사용자는 자신의 시작 순서를
가지게

5
나는 바보 여야하지만이 코드를 어디에 두어야합니까?
Marcel

1
아마도 가장 쉬운 방법은 ... AUTORUN=%USERPROFILE%\autorun.cmd현재 사용자를 위해 하나를 사용하도록 ... 멋진 요령이지만 집에 돌아갈 때 시도해 볼 것입니다 ... 나는 대부분 최근에 bash를 사용하지만 도움이 될 것입니다.
Tracker1

21

시작시 특정 .bat 파일을 실행 하기위한 바로 가기를 만들고 스위치를 cmd.exe추가 할 수 있습니다 /k.

cmd.exe /k "%HOMEDRIVE%\%HOMEPATH%\cmd-startup.bat"

cmd-startup.bat 당신의 가정 디렉토리에 다음과 같이 작동합니다 .bashrc


14

나 같은 창문 멍청한 사람들을 위해 mc3b의 답변 수정.

C:\bashrc.cmd"rc"파일이 상주하는 곳에 파일을 만드십시오 .

@echo off
set TEST_VAR=something

실행 regedit그것을 위해 검색하거나 cmd를 그것을 실행하여.

왼쪽의 폴더에서 다음을 탐색하십시오.

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor

Command Processor폴더를 마우스 오른쪽 버튼으로 클릭하고을 클릭 하십시오 New -> String Value. 키를 입력하십시오 AutoRun. 을 두 번 클릭 AutoRun하고 bashrc 위치를 입력하십시오 C:\bashrc.cmd.

테스트 : 새 cmd 창을 열고 다음을 입력하십시오.

echo %TEST_VAR%

이 표시되면 something작동합니다.


5

쉘이 cmd가 아니라 Powershell이라고 가정하면 쉘에 대한 프로파일 을 작성할 수 있습니다 . 이러한 프로파일은 기본적으로 쉘을 시작할 때 실행되는 스크립트입니다. 처럼 .bashrc. 이 게시물 의 중요한 부분은 다음과 같습니다.

powershell.exe 호스트 프로파일의 위치 (Windows Vista)는 다음과 같습니다.

  • %windir%\system32\Windows­PowerShell\v1.0\profile.ps1
    이것은 모든 컴퓨터 사용자와 모든 셸을위한 것입니다.
  • %windir%\system32\Windows­PowerShell\v1.0\Microsoft.Power­Shell_profile.ps1
    이것은 컴퓨터의 모든 사용자를위한 것이지만 Microsoft.PowerShell 셸만을위한 것입니다.
  • %UserProfile%\Documents\Windows­PowerShell\profile.ps1
    이것은 현재 사용자 및 모든 셸 전용입니다.
  • %UserProfile%\Documents\WindowsPowerShell\Micro­soft.PowerShell_profile.ps1
    이것은 현재 사용자 전용이며 Microsoft.PowerShell 셸 전용입니다.

이 프로파일은 기본적으로 생성되지 않습니다. 그것들은 당신이 그들을 만들 때만 존재합니다.

Windows 7, 8 및 10에서도 동일한 것 같습니다 . 자세한 내용은 여기를 참조 하십시오 .


참고 : 다음을 실행해야 할 수도 있습니다. 그렇지 않으면 프로필이 실행되지 않을 수 있습니다.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

관리자로 다음을 실행하여 모든 사용자의 구성을 변경할 수도 있습니다.

Set-ExecutionPolicy RemoteSigned

3

편집 : 이것을 찾았습니다 : http://msdn.microsoft.com/en-us/library/bb613488(VS.85).aspx

Martin의 솔루션 (바로 가기)에 대해 설명하기 위해 PowerShell과 동등한 기능이 있습니다.

참고 : PowerShell 스크립트 실행이 활성화되어 있어야합니다. 이 기능을 사용하지 않으면 관리자 권한 PowerShell을 실행하고을 실행해야합니다 Set-ExecutionPolicy Unrestricted. 분명히 이것은 보안상의 이유로 권장되지는 않지만 나중에 진행됩니다.

powershell.exe -noexit -File "%HOMEDRIVE%\%HOMEPATH%\ps-startup.ps1"

ps-startup.ps1사용자 디렉터리에 이름이 지정된 파일이 있으면 바로 가기에서 파일을 시작할 때 PowerShell 파일로 실행합니다. 이 바로 가기를 사용하여 PowerShell을 실행하십시오.


이것은 파워 쉘 프로파일을 통해 "더 나은"방법으로 달성 될 수 있습니다. echo $ profile로 현재 프로파일의 위치를 ​​찾을 수 있습니다. 해당 파일에 행을 추가 할 수 있으며 이후 세션에서이를 수행해야합니다. 기존 세션의 경우 & $ profile을 사용하여 프로파일을 다시로드 할 수 있습니다.
ashic

3

기본적으로 nc3b의 답변은 효과가 있지만 Chocolatey의 DevBox-Common 패키지는 더 쉬울 것 입니다.

  1. Chocolatey를 아직 설치하지 않은 경우 설치하십시오.
  2. 다음으로 DevBox-Common 패키지 설치 choco install devbox-common -y
    • 관리 cmd.exe 또는 PowerShell 내에이 명령을 입력해야 합니다.
  3. 이제 당신은 .bashrc.bat.bashrc.include.aliases-common.bat홈 경로입니다. 모든 파일 일치 .bashrc.include.*.bat는 모든 명령 셸 시작시 실행됩니다.

3

유닉스와 같은 세계에서 오는이 질문에 착륙 모든 사람으로 (즉, 모두, 그것은 요청 이후 약 .bashrc) : 근본적으로 윈도우 콘솔의 삶을 개선하고 재고의 사용을 중단 cmd.exe하고 기본 Windows 터미널을! 이 질문을하거나이 질문에 대한 답을 보는 사람은 현재 기본값 cmd.exe과 터미널을 사용하지 않아야합니다 !

재고를 기꺼이 꺼 버리려는 경우 cmd.exe(유효하지 않은 이유는 알 수 없음) 원래 질문에 대한 간단한 대답은 다음과 같습니다.

설치 및 사용 Cmder을 하고 .bashrc상당하게 %CMDER_ROOT%\config\user_profile.cmd도 있지만, 크게 쉘 / 콘솔 경험을 개선.

의견, 확장 및 느슨하게 관련된 권장 사항은 다음과 같습니다.


Cmder는 ConEmu , Clink 및 추가 설정 및 항목을 패키지화하는 메타 패키지 입니다. ConEmu는 시작 스크립트 기능을 제공하는 터미널 에뮬레이터입니다 ( Cmder가 제공 하는 기본 ConEmu 설정을 통해 ) %CMDER_ROOT%\config\user_profile.cmd.

번들로 제공되는 Cmder 패키지를 사용하는 대신 ConEmu 및 Clink를 명시 적으로 독립적으로 사용하고 싶을 수도 있습니다.

그렇게하고, "창문에서해야 할 일, 내가해야 할 일"을 더하기 위해, 다음은해야 할 좋은 일입니다. 이것들은 초기 질문과 관련이 거의 없지만, 최근에 Windows 설치를 거쳤으며 이미이 대부분을 입력 했으며이 질문의 대상 고객이 정확하므로 여기로 이동하십시오 ...

  1. 모든 설치에 scoop.sh 를 사용하십시오.
    • scoop은 모든 패키지가 사용자에게 설치되는 곳 (apt / yum / pacman / emerge / whatever와 유사한)에 대한 훌륭한 패키지 관리자입니다 (관리자 권한이 필요 없음)
    • extras콘솔 이외의 많은 것들을 위해 버킷을 설치하십시오 ( scoop bucket add extras)
    • 당신은 또한 chocolatey 를 사용할 수 있지만, 협박 아래서 원하는 것이 국자 양동이에없는 경우에만 (내 의견)
    • 아니면 그냥 자신의 특종 매니페스트를 만들
    • 내가 원하는 것이 특종 버킷에 없으면 슬픈 날입니다 :(
    • 특종과 달리, chocolatey는 설치에 대한 관리자 권한이 필요합니다
  2. 쉘 대신 Clink 를 사용하십시오.cmd.exe
    • scoop install clink
    • ctrl-r, ctrl-s cmd history navigation과 같은 GNU readline의 장점을 제공합니다.
    • 또한 반드시 clink autorun install때 실행되도록하기 위해 cmd.exe실행됩니다
  3. 터미널 에뮬레이터로 ConEmu 를 사용하십시오.
    • scoop install conemu
    • Windows 터미널은 끔찍합니다 (그러나 그들은 노력하고 있습니다 )
    • 기본 터미널로 구성하십시오
      • "Force ConEmu"및 "OS 시작시 등록" Settings::Integration->Default term
    • 다른 많은 구성 가능성
      • 압도적 인 경우 Cmder 와 합리적인 기본값 ( scoop install cmder)을 고수 할 수는 있지만 개인적으로 Clink와 ConEmu를 별도로 설치 / 실행하는 것이 더 깨끗하다고 ​​생각합니다.
  4. Gow 설치 (예 : 지금 )
    • scoop install gow
    • > 100 개 GNU 도구 ( grep, vim, sed, ls, cat, curl, wc, less, find, 등, 등) 당신은 알고 사랑, 직접의 cmd.exe네이티브가 아닌 이상한 것들없이 -like 터미널
    • 이름 충돌의 이름이 다음 find->gfind과 같은지 확인하십시오.awk->gawk
    • Wow, Cygwin, MSYS, git bash 등을 사용하는 대신 기본 Windows 작업에 Gow를 거의 독점적으로 사용합니다.
    • Cygwin 환경, WSL 파일 시스템 불쾌감 ( 작업 중 ), gitbash 창 등 의 두통없이 Windows에 기본적으로 머무르면서 지금까지 경험했던 것처럼 Gow 도구는 GNU / * nix-on-Windows 에 가깝습니다.
  5. 적합하다고 생각되는 다른 편리한 도구를 설치하십시오.
    • 엑스트라 버킷이 특종 많은 더 좋은 도구 및 응용 프로그램을 (파이썬, OpenSSH를, ripgrep, fzf, 시스 인 터널, 숭고한 텍스트, 융합, CCleaner를, 등)
      • 확실히 sysinternals 는 GNU / 유닉스 가 아니지만 Windows 기본 도구의 필수 / 클래식 모음입니다.
    • 사용 scoop search하고 scoop info원하는 것을 찾거나 양동이를 탐색하십시오 ( 메인과 여분이 아닌 여러 개의 양동이가 있습니다)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.