【问题标题】:Cygwin initial directory in unknown locationCygwin 初始目录位于未知位置
【发布时间】:2017-04-17 20:43:40
【问题描述】:

我通常是 Linux 命令提示符用户,现在我在笔记本电脑上使用的是 Windows 10,我知道...糟糕的选择。所以我在 windows 上使用 Cygwin 作为我的终端,唯一的问题是当我第一次启动它时,它在我不认识的目录中初始化

]1

我希望能够导航到我的 Documents 和 Desktop 文件夹以访问存储我的代码文件的位置。下面是我在使用 'ls' 和 'cd ..' 命令后看到的另一个屏幕截图。

我花了太多时间浏览所有这些可见的目录,而且我似乎无法找到我的文件在系统中的位置。那么我该如何找到它们呢?如何将 Cygwin 设置为始终在正确的目录中启动?

谢谢。

【问题讨论】:

标签: linux windows terminal cygwin


【解决方案1】:

Cygwin 在安装目录(通常为 C:\cygwin)内创建一个类似 POSIX 的文件系统布局,这就是在 Cygwin 内挂载为 / 的内容。

“真正的”Windows 文件系统挂载为/cygdrive,因此/cygdrive/c/cygwin 是一个递归目录,其内容与/ 相同(如果这有助于可视化关系)。

您的 Windows 用户主目录(不要与 C:\cygwin\home\USERNAME 中的 Cygwin 目录混淆)位于 /cygdrive/c/Users/USERNAME。如果您愿意,可以将以下内容添加到 ~/.bashrc 文件的底部:

cd "/cygdrive/c/Users/$USER"

在您的 Windows 用户目录中启动您的 shell。就个人而言,我发现在实践中,我在 Cygwin 中工作时很少真正需要最终进入 Windows 领域,而是每个人都有自己的需求。

【讨论】:

    【解决方案2】:

    最干净的解决方案是按以下方式更改C:\cygwin\etc\nsswitch.conf 文件:

    %H 变量代表 POSIX 样式的 Windows 主目录,因此将其添加到 db_home: 行并取消注释该行。

    例子:

    # /etc/nsswitch.conf
    #
    #    This file is read once by the first process in a Cygwin process tree.
    #    To pick up changes, restart all Cygwin processes.  For a description
    #    see https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nsswitch    
    # Defaults:
    # passwd:   files db
    # group:    files db
    # db_enum:  cache builtin
    db_home: /%H/home
    # db_shell: /bin/bash
    # db_gecos: <empty>
    

    有关如何通过编辑 /etc/nsswitch.conf 文件来更改 Cygwin 的默认设置的更多信息,请参阅 this answer

    更多信息:默认情况下,根目录/c:\cygwin(或c:\cygwin64 在64 位安装上),所以一切都存在于那里。 更改上述设置将在c:\cygwin\home 中创建一个符号链接,对应于您在Windows 中的配置文件目录,通常c:\Users\&lt;username&gt; 由环境变量%userprofile% 引用。

    编辑: 最后一句话不正确。实际发生的情况是您的主目录将更改为 /cygdrive/c/Users/&lt;username&gt;

    最后一个有用的提示:如果你想验证你所在的目录,相对于 Windows 的目录结构,你可以在 cygwin 提示符下运行以下命令: explorer.exe .

    (注意.)这会在您的当前目录中打开一个资源管理器窗口。

    我认为对您的问题最简单的答案是您可以导航到任何驱动器上的任何目录(即C:D: 等),方法是将驱动器号替换为/cygdrive/&lt;letter&gt;(即C:\访问/cygdrive/c)

    【讨论】:

      猜你喜欢
      • 2015-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-08
      • 1970-01-01
      • 2021-05-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多