0

我是 linux 的初学者,并且非常热衷于学习操作系统。我正在尝试从命令行启动 Firefox(或任何其他软件,如 Evince),如下所示:

[root@localhost ~]# at 1637
[root@localhost ~]# at> firefox
[root@localhost ~]# at> ^d

作业被安排,没有任何错误。但是在指定的时间它没有运行。我还尝试给出以下路径:

[root@localhost ~]# at 1637
[root@localhost ~]# at> /usr/bin/firefox
[root@localhost ~]# at> ^d

还是没有结果。但是当我尝试使用echo在屏幕上显示文本时,它会根据需要在指定时间出现。可能是什么问题?

4

4 回答 4

0

1) 并不总是建议以 root 身份运行

./firefox2)如果你在firefox的当前目录下也可以试试。在 linux 中,您需要注意路径变量。除非.(当前目录)在您的路径中,./program否则如果程序与您位于同一目录中,则必须键入。

您还需要注意文件权限:在 linux 中,您具有 read-write-eXecute 访问权限。

ls -l将列出目录并显示文件权限:

drwxr-xr-x   10 user  staff     340 Oct  6  2012 GlassFish_Server/
drwx------@  15 jeffstein  staff     510 Oct  6 15:01 Google Drive/
drwxr-xr-x   20 jeffstein  staff     680 May 14  2013 Kindle/
drwx------+  67 jeffstein  staff    2278 Jan 26 14:22 Library/
drwx------+  19 jeffstein  staff     646 Oct 23 18:28 Movies/
drwx------+  15 jeffstein  staff     510 Jan  3 20:29 Music/
drwx------+  90 jeffstein  staff    3060 Mar  9 20:23 Pictures/
drwxr-xr-x+   6 jeffstein  staff     204 Nov  3 21:16 Public/
drwxr-xr-x   22 jeffstein  staff     748 Jan 14  2012 androidTools/
-rwxrwxrwx    1 jeffstein  staff    1419 Aug 28  2013 color.sh*

这是一个示例,ls -l您可以看到 color.sh 具有 -rwxrwxrwx,这意味着任何人都可以读取或写入或运行该文件。

实际上不知道您在哪里安装了 firefox,但是我无法提供更多帮助,但这些是一些可能会有所帮助的小提示。

于 2014-03-11T11:20:08.610 回答
0

尝试使用“whereis firefox”命令查找实际安装 firefox 的位置。然后尝试在 at 命令中使用该路径。

于 2014-03-11T12:32:08.980 回答
0

为了获得有关如何使用命令类型的说明:

man at

这将显示“手册”

DESCRIPTION
     The at and batch utilities read commands from standard input or a speci-
     fied file.  The commands are executed at a later time, using sh(1).

     at      executes commands at a specified time;

     atq     lists the user's pending jobs, unless the user is the superuser;
             in that case, everybody's jobs are listed;

     atrm    deletes jobs;

     batch   executes commands when system load levels permit; in other words,
             when the load average drops below _LOADAVG_MX (1.5), or the value
             specified in the invocation of at run.

所以很明显你需要安排一个工作,at你可以看看它是否有效atq

阅读手册,它应该会有所帮助 - 如果我有更多时间,我会给你写一个简单的例子。

于 2014-03-11T14:36:30.807 回答
0

我想你没有设置DISPLAY。at将在未设置显示的单独外壳中运行。试试下面的代码。

dinesh:~$ at 2120
warning: commands will be executed using /bin/sh
at>  export DISPLAY=:0
at> /usr/bin/firefox > firefox.log 2>&1
at> <EOT>
job 7 at Tue Mar 11 21:20:00 2014

如果仍然失败,请检查firefox.log更多信息。

于 2014-03-11T16:07:11.423 回答