如何运行海豚代替鹦鹉螺?


8

由于各种原因,其中一个是我更喜欢它,因此我想将Dolphin作为我的默认文件管理器运行Ubuntu 12.04。我已经安装了海豚。

我已经搞定了:

sudo mv /usr/bin/nautilus /usr/bin/natilus.back && sudo ln -s /usr/bin/dolphin /usr/bin/nautilus

这样,任何调用Nautilus的程序都将打开Dolphin。到目前为止,这一切都很好,但海豚希望将konsole称为默认终端,但我想将其称为gnome-terminal作为默认终端。

我试过了:

sudo ln -s /usr/bin/gnome-terminal /usr/bin/konsole

制作一个名为konsole的gnome-terminal的链接,但这没有用。我再也没有收到来自Dolphin的错误,但什么也没发生。终端面板为空白。

任何人都知道如何执行此操作,或者是否有更好的方法将海豚实现为默认FM,我耳熟能详。


更新20120727

从那时起,我意识到我一开始就没有使用符号链接。相反,我使用了更聪明的方法

  1. 在主目录中创建一个名为bin的文件夹

    mkdir ~/bin
    
  2. 制作一个名为Nautilus的脚本,该脚本执行Dolphin并将其放在此文件夹中

    gedit ~/bin/nautilus
    

    然后将此代码复制到其中并保存

    #!/bin/bash
    exec dolphin $@
    exit 0
    

这是使Dolphin成为默认浏览器以及进入/usr/share/applications文件夹并更改3个nautilus .desktop文件以启动Dolphin而不是Nautilus 的最安全方法。

但是这不能解决海豚遇到的两个问题

  1. 它想启动konsole终端而不是gnome-terminal。
  2. 它的图标令人毛骨悚然,qt4-qtconfig无法更改它们。

更新20120810

要修复难看的氧气图标以匹配您的系统主题,qt4-qtconfig工具是不够的。您将需要安装KDE系统设置应用程序

sudo apt-get install systemsettings 

启动应用程序
从那里转到“应用程序外观”>“图标”,然后根据需要进行更改

我在Ubuntu 12.04 GNOME-SHELL中默认的文件管理器现在是QT DOLPHIN文件管理器。我好棒!!!这很完美!谢谢大家!


对于临时解决方案,我只是安装了Konsole,但我确实希望将来将Dolphin与gnome-terminal一起使用...虽然Konsole还不错,但我可以坚持使用,但是...回答我的上述问题/问题
Joshua Robison 2012年

2
您知道引入系统的一些严重麻烦吗?下次鹦鹉螺将被更新时,您的海豚将被覆盖(因为您的链接指向那里)。gnome-terminal也是如此。混入类似的东西通常不是一个好主意-也许您应该考虑切换到KDE :)
Izzy 2012年

确实是Dolphin> Nautilus,但很难在ubuntu下切换到另一个文件管理器并使其功能完整:/
hytromo

终端面板被硬编码在海豚源代码中,它也使用一些预定义的方法/功能通过代码(即相应地更改目录)与代码进行交互,而这gnome-terminal可能不支持,因此,如果不进行修改而在某些配置中似乎是不可能的。
Samik

哇!!!@Izzy感谢您的警告。我根本没有考虑过。然后,我将不得不想出另一种方式...我猜通过.desktop文件吗?
约书亚·罗宾逊

Answers:


7

您尝试执行的操作有几个警告。我已经提到了您的方法带来的危险:

下次鹦鹉螺将被更新时,您的海豚将被覆盖(因为您的链接指向那里)。gnome-terminal也是如此。

因此,我们认为这不是一个好主意:)

但是有一些方法可以解决,因此当请求“ z”时会运行“ x”-但是我不知道不是“ z”,而是“ / full / path / to / z”被叫。只要是“ z”:

  • 为z 创建别名,例如alias z=x(在每个用户级别上工作-或全局工作,具体取决于定义的位置)
  • 在实际z所在的位置之前,在PATH中提到的位置中为z创建“替换”

关于第二种方法的更多细节。考虑到您的原始问题,您希望每当调用鹦鹉螺时都执行海豚。您已经在找到鹦鹉螺/usr/bin/nautilus。现在,我们(可能是正确的)假设您的$PATH包含(按此顺序)/usr/local/bin:/usr/bin-这样您就会看到/usr/local/bin将被搜索 /usr/bin。因此,我们只需创建一个/usr/local/bin/nautilus具有以下内容的shell脚本:

#!/bin/bash
/usr/bin/dolphin %$@

那么会发生什么呢?如果您(或某些脚本/程序/守护程序/ ...)调用nautilus,它将执行/usr/local/bin/nautilus(因为这是在PATH中找到的第一个“鹦鹉螺”),这才开始/usr/bin/dolphin-瞧!但是,如果“无论使用什么”都使用完整路径,则此方法将无效。

所以你说:嘿,为什么伊齐不说“只是做一个ln -s /usr/bin/dolphin /usr/local/bin/nautilus?” 当然,您可以执行此操作-它将保持相同的效果。但是,如果您需要引入原始调用传递的其他参数,则使用所示的脚本可能会派上用场。使用上述脚本,海豚只需传递与原始调用(%$@)相同的参数即可。但是您可以在脚本中进行操作,替换参数等。至于当前的问题,链接就足够了(只要不使用完整路径调用nautilus)。


Izzy,您像往常一样很棒。我赞成你的回答。谢谢(你的)信息。我确实了解到,最初将Dolphin设置为默认FM的方式与我的想法不同。我实际上是在〜/ bin中创建了一个脚本,该脚本称为nautilus,该脚本执行海豚。所以我更新了我的问题。我认为您的回答仍然非常相关,并尝试相应地表达我的问题。仍然想修复QT应用程序,以便它们显示Faenza主题图标...,并且仍然想使用gnome-terminal,但也许我在做梦。
2012年

感谢您的赞赏-很高兴阅读我的回答对您有所帮助。当您回答了第一个问题时,您可能会考虑分别问另一个问题(新问题-这将增加您获得良好答案的机会;您仍然可以在此处链接“初始故事”),因为它不再与标题匹配?在这种情况下,您甚至可以评估以接受我的回答;)
Izzy

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.