当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 执行程式:多工与Session

Unix/Linux
linux 操作技巧收集_
linux下如何读取使用iso 镜像文件的方法
Linux平台下文件的压缩与解压参数说明
Linux下常用压缩格式的压缩与解压方法
Linux JDK,TOMCAT安装及环境设置
Linux sleep命令使用参数
Linux cat命令参数
nfs 配置的简单例子
linux kill 关闭进程命令
linux ultrasphinx Anonymous modules have no name to be referenced by
Linux oracle 9i图文安装方法一
Linux oracle 9i图文安装教程二
Linux oracle 9i图文安装教程三
Linux oracle 9i图文安装教程四
Linux oracle 9i图文安装教程五
Linux oracle 9i图文安装教程六 完结篇
linux AS3 oracle9i 安装指南
Linux 下 (RedHat 9.0) JDK,Tomcat,MySQL的安装
RedHat 9.0下Apache+PHP+MySQL服务器安装配置
Linux 下用 Python 连接 MSSql Server 2008

Unix/Linux 中的 执行程式:多工与Session


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 53 ::
收藏到网摘: n/a


  要执行一个程式, 就像 DOS 一样键入它的名字就可以了. 如果说这个程式被放在 PATH(第四节) 指定的目录 (第二节), 那麽该程式就会被启动. 例外的是, Linux 不像 DOS可以执行放在现行目录下的程式 (.) , 除非 . 已经加入 PATH 中了. 若要执行现行目录下的程式, 可以这样做: ./<prog>.
  
  这是一个标准命令的格式:
   $ command -s1 -s2 ... -sn par1 par2 ... parn <input >output
  -s1 , -s2 ... -sn 是命令选项, parn 是程式参数. 我们可以在同一行上键入数个命令:
   $ command1 ; command2 ; ... ; commandn
  这就是执行命令的方法, 但是我们可以更进一步. 一个使我们使用 Linux 的主要原因是, 它是一个多工的系统 -- 它可以同时执行数个程式 (以下, '程式'用'行程'代替)你可以将一个原本在背景执行的行程提升到前景并继续执行. 而且, Linux 可以使你有多个 session : 这就像同时有好几台电脑在工作!
  
  - - 切换 session 1..8:
   $ <ALT-F1> ... <ALT-F8>.
  - - 开始一个新的 session , 但不离开原本 session :
   $ su - <loginname>
  例如:
   $ su - root
  这相当有用. 比如, 当你要 mount 一个磁碟(机) 时. 因为只有 root可以作这件事.
  - - 结束一个 session:
   $ exit
  - - 在前景执行一个行程:
   $ progname [-switches] [parameters] [<input] [>output]
  - - 在背景启动一个行程(在背景执行) 要加上 '&' 这个符号:
   $ progname [-switches] [parameters] [<input] [>output] &

  - - 查看有多少行程正在执行:
   $ ps
  这样会列出一个表格. 每一个行程都会有一个 PID 来识别 (一个数字).
  - - 杀掉一个行程:
   $ kill <PID>
  有时後你必需用这个方法来结束一些行程 (当你不知道怎样正确结束时 :) 一个行程或许要用以下方法才可以结束:
   $ kill -15 <PID>
   $ kill -9 <PID>
  此外, shell (像 COMMAND.COM 相等的东西) 允许你暂停某个行程的执行, 或是把前景换到背景执行, 背景换来前景. 我们用'工作'来称呼行程.
  - - 查看有多少工做:
   $ jobs
  这样列出来的工作是以一个 shell 分配的数字来区别的, 而不是用 PID.
  - - 暂停一个前景的行程:
   $ <CTRL-C>
  (但不总是有效 :p )
  - - 暂停前景的程式:
   $ <CTRL-Z>
  (ditto)
  - - 将一个被暂停的程式移到背景继续执行:
   $ bg <job>
  - - 把一个背景执行中的程式提升到前景:
   $ fg <job>
  - - 再一次的, 要砍掉一个行程:
   $ kill %<job>
  这里的 <job> 可能是 1, 2, 3, ... 有了这些命令你就可以在同一个时间格式化磁碟,压缩档案, 编译一个程式, 还可以解压缩, 而且, 你仍然还是看到提示号和游标在等待你的命令. 不妨在 DOS 下试试看这麽做吧!! 在 Windows 下也试试, 比较一下它们效率的不同, 然後你就会知道你的选择是否正确了.