“找不到指向控制台的文件描述符”

我是新来的,这是我的第一个职位。

我对 Windows 上的 Ubuntu 上的 Bash 有一个问题。如果我在 Mac 终端上输入“ open (filename)”,它会用正确的程序打开文件,但如果我试图在 Windows bash 上使用它,它会说: “找不到指向控制台的文件描述符”。

我也试过 xdg-open 和 gnome-open,但都不能用。有人能解释一下如何解决这个问题以及 open 命令是如何工作的吗?
先谢谢你!

122025 次浏览

这是因为 open是 Mac 特有的命令,它在 Linux (ubuntu)下不可用,Mac open可以执行一个文件(如果文件是可执行的) ,或者将文件打开到一个文本编辑器(如果它是一个文档或文本文件)或者打开一个目录。

你可以使用 xdg-open代替 open,它可以做同样的事情,独立于应用程序,例如 pdf、图片等。它将打开一个新的虚拟终端(我已经在 Linux 上试过了)

例如:

xdg-open ~/Pictures/Wallpapers/myPic.jpg

xdg-open ~/Docs/holidays.pdf

对于 linux,使用 打开打开是为 Mac OS 设计的。Linux 中的 打开是 openvt (开放虚拟终端)的别名。

为了简化它,您可以将以下代码行附加到 ~/. bashrc 或 ~/. zhrc,这取决于您使用的 shell。

alias o="xdg-open" # o stands for open

然后下次你可以像下面这样键入,以减少一些键盘击打。

o file_name.pdf

要在 Windows bash 上打开一个要在 Ubuntu 中编写的文件,你可以输入-:

Nano Filename.txt

上面的命令允许您在文件中编写/编辑,然后您可以使用 Ctrl + x,然后按 “ y”保存。使用以下方法检查/查看文件内容:

Filename.txt