Windows 中是否有与 Linux 中的 .bashrc 等效的文件?

Windows 中是否有与 Linux 中的 .bashrc 等效的文件?

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

答案1

这个问题问得非常好。我发现。我想您可以创建一个 cmd 脚本并让它在启动 cmd 时运行:-?

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

编辑:我刚刚试过了。我有AutoRun=C:\mini\bashrc.cmd,并且 bashrc.cmd 是

@echo off
set TEST_VAR=something

当我启动 cmd 并输入时,echo %TEST_VAR%它显示something。所以它起作用了 :)

答案2

修改nc3b 的回答对于像我一样的 Windows 新手来说。

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,它就有效。

答案3

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

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

cmd-startup.bat在你的主目录中就可以像.bashrc

答案4

对于所有来自类unix世界并遇到这个问题的人(即每个人,因为它询问.bashrc):根本改善您的 Windows 控制台生活并停止使用库存cmd.exe和默认的 Windows 终端! 没有人问这个问题,或者看这个问题的答案,应该使用当前的默认cmd.exe和终端!

如果愿意关闭库存cmd.exe(我知道没有不这样做的正当理由),对原始问题的一个简单回答是:

安装和使用康德而你的.bashrc等价物变成 %CMDER_ROOT%\config\user_profile.cmd,同时显著地改善您的 shell/控制台体验。

以下是意见、扩展和松散相关的建议......


Cmder 是一个元包,它康埃穆碰杯以及一堆额外的设置和内容。ConEmu 是提供启动脚本功能的终端仿真器,它(通过Cmder 提供的默认 ConEmu 设置) 最终路由到指示的%CMDER_ROOT%\config\user_profile.cmd

您可能只想明确地使用 ConEmu 和 Clink,而不是使用捆绑的 Cmder 包。

为了做到这一点,并增加一些“必须在 Windows 上工作,我该怎么办”的幸福感,下面是一些好/有主见的事情要做。这些确实与最初的问题非常松散相关,但我最近又经历了 Windows 设置,已经输入了大部分内容,这个问题的目标受众是正确的,所以你看吧​​……

  1. 使用scoop.sh为了全部您的安装
    • scoop 是一款出色的 Windows 软件包管理器(类似于 apt/yum/pacman/emerge/whatever)...其中所有软件包都安装给用户(无需管理员权限)
    • extras对于许多非控制台的东西,一定要安装bucket ( scoop bucket add extras)
    • 你也可以使用巧克力味,但(我的意见)只有在胁迫下,而且你想要的东西不在铲斗里
    • 或者直接制作自己的独家新闻清单
    • 当我想要的东西不在铲斗里时,那真是令人伤心的一天 :(
    • 与 scoop 不同,chocolatey 需要管理员权限才能安装
  2. 使用碰杯作为你的外壳,而不是cmd.exe
    • scoop install clink
    • 为您提供 GNU readline 优点(如 ctrl-r、ctrl-s cmd 历史导航)等
    • 确保在运行clink autorun install时也使其运行cmd.exe
  3. 使用康埃穆作为你的终端模拟器
    • scoop install conemu
    • Windows 终端是糟糕的(但它们是正在努力
    • 确保将其配置为默认终端
      • “强制 ConEmu”和“在操作系统启动时注册”Settings::Integration->Default term
    • 还有许多其他配置可能性
      • 如果不知所措,也许就坚持下去康德及其合理的默认值(scoop install cmder),但我个人认为分别安装/运行 Clink 和 ConEmu 更简洁。
  4. 安装(喜欢,现在
    • scoop install gow
    • >100 个 GNU 工具grep,,,,,,,,,,等等)您熟悉和喜爱的,直接在您的类似终端中,没有非vim本地的怪异感sedlscatcurlwclessfindcmd.exe
    • 留意名称冲突重命名,find->gfind例如awk->gawk
    • 我几乎只使用 Gow 来进行基本的 Windows 工作,而不是使用 WSL、Cygwin、MSYS、git bash 等。
    • Gow 工具与我迄今为止体验过的 GNU/*nix-on-Windows 非常接近,同时又保持了 Windows 原生的特性,没有 Cygwin 环境和 WSL 文件系统的困扰(这也是正在进行中)、gitbash 窗口等
  5. 根据需要安装其他方便的工具(使用勺子)
    • 主要的额外内容铲斗有许多更多优秀的工具和应用程序(python、openssh、ripgrep、fzf、sysinternals、sublime-text、meld、ccleaner 等)
      • 虽然这绝对不是 GNU/unix 的事情,系统内部是 Windows 原生工具的基本/经典集合。
    • 使用scoop searchscoop info查找您想要的,或浏览存储桶(有几个桶,不仅仅是主要内容和附加内容)

相关内容