这是一个简短但是非常有用的教程:它向你展示从终端运行Linux应用程序的同时,如何保证终端仍然可以操作。

在Linux中有许多方式可以打开一个终端,这主要取决于你的发行版的选择和桌面环境。

Linux终端窗口

使用Ubuntu的话,你可以使用CTRL + ALT + T组合键打开一个终端。你也可以点击超级键(Windows键)打开一个终端窗口。在键盘上,打开Ubuntu Dash,然后搜索”TERM”。点击”Term”图标将会打开一个终端窗口。

其他诸如XFCE, KDE, LXDE, Cinnamon和MATE的桌面环境,你将会在菜单中发现“终端”这个应用。还有一些发行版会把终端图标放在菜单项,或者在面板上放置终端启动器。

你可以在终端里面输入一个程序的名字来启动一个应用。举例,你可以通过输入”firefox”启动火狐浏览器。

从终端运行程序的好处是可以使用额外的选项。

举个例子,如果你输入下面的命令,一个新的火狐浏览器将会打开,而且默认的搜索引擎将会搜索引号之间的词语:

firefox -search "Linux.About.Com"

你会发现,如果你运行火狐浏览器,应用程序打开后,控制权将会回到终端(重新出现了命令提示符),这将意味着你可以继续在终端工作。

通常情况下,如果你通过终端运行一个程序,程序打开后,并且直到那个程序关闭结束,你都将不会获得终端的控制权。这是因为你是在前台打开程序的。

想要从终端运行一个程序,并且立即将终端的控制权返回给你,你需要以后台进程的方式打开程序。

为了以后台进程的方式打开一个程序,只需要添加符号(&)到命令中,如下面所示:

libreoffice &

在终端中仅仅提供程序的名字,应用程序可能运行不了。如果程序不存在于一个设置在PATH 环境变量的文件夹中,你需要指定完整的路径名来运行程序。

/path/to/yourprogram &

如果你并不确定一个程序是否存在于Linux文件系统中,使用find或者locate命令来查找该应用程序。

找一个文件的语法如下:

find /path/to/start/from -name programname

举个例子,可以使用下面的命令寻找Firefox的位置:

find / -name firefox

输出会很快滚动出很多,所以你可以以管道的方式控制输出的多少:

find / -name firefox | more

find / -name firefox | less

find命令将会返回因权限拒绝而发生错误的文件夹数量,这些文件夹你没有权限去搜索。

你可以使用sudo命令提升你的权限。如果sudo没有安装,你需要切换到拥有权限的用户:

sudo find / -name firefox | more

如果你知道你想寻找的文件在你的当前文件夹中,你可以一个点代替先前的斜线,如下:

sudo find . -name firefox | more

你可能不需要sudo来提升权限。如果你在home文件夹中寻找文件,sudo就不需要。

一些应用程序需要提升用户权限来运行,你可能得到一个缺少权限的错误,除非你使用一个具有足够权限的用户,或者使用sudo提升你的权限。

下面是一个小花招。如果你运行一个程序,而且它需要提升权限来运行,输入下面命令来提升权限重新执行:

sudo !!

Linux中的mate程序的进程,终端下以后台模式运行Linux程序的过程详解相关推荐

  1. linux中负载值为多少正常_什么是cpu负载_cpu负载多少正常_详解Linux系统的CPU负载均值...

    上一篇文章的最后,作者提到了文章的参考来源,我特意前往访问了下,发现写得非常不错,特转过来,可以结合阅读,以便更容易理解 CPU 负载这个概念. 你可能对于 Linux 的负载均值(load aver ...

  2. Windows下在后台一直运行Python程序

    将python.exe替换成pythonw.exe, 程序就可以在Windows后台执行, 不显示命令提示符窗口: 另一种方法是修改脚本的扩展名为".pyw",双击即可后台运行,不 ...

  3. 解决Linux关闭终端(关闭SSH等)后运行的程序自动停止

    CSDN GitHub 解决Linux关闭终端(关闭SSH等)后运行的程序自动停止 AderXCoding/system/tools/ssh_exit 本作品采用知识共享署名-非商业性使用-相同方式共 ...

  4. Linux中的两种守护进程stand alone和xinetd

    Linux中的两种守护进程stand alone和xinetd --http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html#top 一 ...

  5. Linux中的各种栈:进程栈 线程栈 内核栈 中断栈

    Linux中的各种栈:进程栈 线程栈 内核栈 中断栈 栈的作用 1. 函数调用 2. 多任务支持 Linux 中有几种栈?各种栈的内存位置? 1. 进程栈 2. 线程栈 3. 进程内核栈 4. 中断栈 ...

  6. python os模块安装方法_基于python中pygame模块的Linux下安装过程(详解)

    一.使用pip安装Python包 大多数较新的Python版本都自带pip,因此首先可检查系统是否已经安装了pip.在Python3中,pip有时被称为pip3. 1.在Linux和OS X系统中检查 ...

  7. 在VB中如何让线程或进程在指定的CPU上运行

    代码如下: Option Explicit Private Declare Function WTSEnumerateProcesses Lib "wtsapi32.dll" Al ...

  8. python的执行过程_在交互式环境中执行Python程序过程详解

    前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...

  9. linux系统下安装pip3,linux下安装python3和对应的pip环境教程详解

    linux下安装python3和对应的pip环境教程详解 1.下载python3.6的安装包: 2.解压后,进入到解压目录下,执行如下命令,将python3.6进行编译,如下是将python的环境编译 ...

最新文章

  1. 023 判断出栈顺序是否正确
  2. 潘石屹 python 知乎_如何看待地产大佬潘石屹微博宣布学习python这件事?对我们有什么启发?...
  3. 使用ServiceStackRedis链接Redis简介
  4. matlab unique函数
  5. 【MM模块】Invoice for POs with Acc Assignment 科目指派
  6. 思科认证网络工程师CCNA(更新完毕)
  7. Async下处理多个异常
  8. 设计模式(九)--注册树模式
  9. eclipse上搭建mybatis
  10. [NOIP2008 提高组] 笨小猴-map容器用来标记
  11. 企业级docker私有仓库的配置与使用
  12. 2d unity 多物体 射线_24小时入门Unity游戏开发系列教程
  13. javase开发工具包中的什么命令负责运行应用程序_想当程序员?先搞懂JavaSE、JavaEE和JavaME之间的区别吧!...
  14. 奚恺元《别做傻瓜做的事》
  15. 批处理取系统前一天时间并取备分文件日期为前一天的复制到本地
  16. 只保留日期_第五人格五个特定活动道具十分少见 最后一个一年只出现一次
  17. Premiere 五套特效转场插件合集 FilmImpact Transition Packs V3.6.11
  18. Raptor制作猜数游戏流程图
  19. 如何实现话费充值api接口?详细讲解源码
  20. Spark MLlib系列(二):基于协同过滤的电影推荐系统

热门文章

  1. redist mysql_redist命令操作(三)--集合Set
  2. quartz集群重复调度的解决
  3. 第一章 ---- Spring IOC
  4. 深度linux不能联网,Deepin Linux 无法上网
  5. 鸿蒙智慧屏桌面,全球首发国产鸿蒙操作系统,荣耀智慧屏现场亲测
  6. python写一些小代码_#python#自己写的一段小代码
  7. sql 只要一个字段相同则只显示一条数据_数据库
  8. php页面上必须有表单,php – 在同一页面上显示提交的表单响应. (没有重装)
  9. 最便宜的那款特斯拉,刚刚喜提“最安全汽车”称号(然后被打脸)
  10. 一文看懂机器视觉工业相机与普通相机的区别