是否有相当于 linux 中的 .bashrc 文件的窗口?

84 windows bashrc

刚刚发现 doskey emacs=emacs -nw $*,但是没有像 .bashrc 这样的东西,我每次启动 shell 时都必须输入它,对吧?

nc3*_*c3b 85

这个问题问得好。我找到了这个。我想你可以制作一个 cmd 脚本并在启动 cmd 时运行它:-?

; Run a command when CMD.exe starts
[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor]
"AutoRun"=-
Run Code Online (Sandbox Code Playgroud)

编辑:我刚试过。我有AutoRun=C:\mini\bashrc.cmd和 bashrc.cmd 是

@echo off
set TEST_VAR=something
Run Code Online (Sandbox Code Playgroud)

当我启动 cmd 并输入echo %TEST_VAR%它时说something。所以它有效:)

  • 我使用的小片段:`doskey∙♦=exit`(其中`♦` 是`[char]4`)。使您能够使用 Ctrl+D、Enter 关闭外壳。 (11认同)
  • 我一定是个白痴,但我把这段代码放在哪里? (5认同)
  • @Tracker1 作为 cmd 命令,没有打印错误(即当脚本丢失时): `reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d @^%USERPROFILE^%\autorun.cmd" " 2^>NUL /f` (3认同)
  • HKEY_CURRENT_USER\Software\Microsoft\Command Processor with AutoRun=%HOMEPATH%\bashrc.bat 所以每个用户都有自己的启动序列 (2认同)

Mar*_*tin 24

您可以创建一个快捷方式cmd.exe并添加/k开关以在启动时运行某个 .bat 文件,如下所示:

cmd.exe /k "%HOMEDRIVE%\%HOMEPATH%\cmd-startup.bat"
Run Code Online (Sandbox Code Playgroud)

cmd-startup.bat 然后在你的家庭目录中工作就像 .bashrc


Hum*_*ger 20

修改 mc3b 对像我这样的 Windows 菜鸟的回答。

C:\bashrc.cmd在您希望“rc”文件驻留的地方或任何地方创建一个文件。

@echo off
set TEST_VAR=something
Run Code Online (Sandbox Code Playgroud)

运行regedit通过搜索,或在cmd中运行它。

在左侧的文件夹中导航到:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
Run Code Online (Sandbox Code Playgroud)

右键单击该Command Processor文件夹,然后单击New -> String Value。输入密钥AutoRun。双击AutoRun并输入 bashrc 位置C:\bashrc.cmd

测试:打开一个新的 cmd 窗口并输入:

echo %TEST_VAR%
Run Code Online (Sandbox Code Playgroud)

如果它说something,它的工作原理。


小智 7

假设您的 shell 是 Powershell,而不是 cmd,您可以为您的 shell创建一个配置文件。这些配置文件基本上是在您启动 shell 时执行的脚本。就像.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 shell。
  • %UserProfile%\Documents\Windows­PowerShell\profile.ps1
    这仅适用于当前用户和所有 shell。
  • %UserProfile%\Documents\WindowsPowerShell\Micro­soft.PowerShell_profile.ps1
    这仅适用于当前用户且仅适用于 Microsoft.PowerShell shell。

默认情况下不会创建这些配置文件。仅当您创建它们时它们才存在。

在 Windows 7、8 和 10 上似乎相同。您也可以在此处找到更多信息。


注意:您可能需要运行以下命令。否则,您的配置文件可能无法执行。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Run Code Online (Sandbox Code Playgroud)

您还可以以管理员身份运行以下命令来更改所有用户的配置。

Set-ExecutionPolicy RemoteSigned
Run Code Online (Sandbox Code Playgroud)