linux command3

来源:互联网 发布:校园网络建设 编辑:程序博客网 时间:2024/06/05 03:57
名称:chfn
  使用权限:所有使用者
  用法:shell>> chfn
  说明:提供使用者更改个人资讯,用于 finger and mail username
  范例:
  shell>> chfn
  Changing finger informationfor user
  Password: [del]
  Name[]:Johnney Huang ### 提供 finger 时的资料
  Office[]:NCCU
  Office Phone[]: [del]
  Home Phone[]: [del]

  名称:chsh
  使用权限:所有使用者
  用法:shell>> chsh
  说明:更改使用者 shell 设定
  范例:
  shell>> chsh
  Changing fihanging shellfor user1
  Password: [del]
  New shell [/bin/tcsh]: ###[是目前使用的 shell]
  [del]

  shell>> chsh -l ### 展示 /etc/shells 档案内容
  /bin/bash
  /bin/sh
  /bin/ash
  /bin/bsh
  /bin/tcsh
  /bin/csh


  ” finger [返回]
  名称: finger
  使用权限: 所有使用者
  使用方式: finger [options]user[@address]
  说明:finger 可以让使用者查询一些其他使用者的资料。会列出来的资料有:
  Login Name
  User Name
  Home directory
  Shell
  Login status
  mail status
  .plan
  .project
  .forward

  其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等档案里的资料。如果没有就没有。finger 指令并不限定于在同一伺服器上查询,也可以寻找某一个远端伺服器上的使用者。只要给一个像是 E-mail address 一般的地址即可。
  把计:
  -l
  多行显示。
  -s
  单行显示。这个选项只显示登入名称,真实姓名,终端机名称,闲置时间,登入时间,办公室号码及电话号码。如果所查询的使用者是远端伺服器的使用者,这个选项无效。

  范例:下列指令可以查询本机管理员的资料:
  finger root

  其结果如下:
  Login: root Name: root
  Directory: /root Shell:/bin/bash
  Never logged in.
  No mail.
  No Plan.

  名称:last
  使用权限:所有使用者
  使用方式:shell>> last[options]
  说明:显示系统开机以来获是从每月初登入者的讯息
  把计:
  -R 省略 hostname 的栏位
  -num 展示前 num 个
  username 展示 username 的登入讯息
  tty 限制登入讯息包含终端机代号
  范例:

  shell>> last -R -2
  johnney pts/1 Mon Aug 1420:42 still logged in
  johnney pts/0 Mon Aug 1419:59 still logged in

  wtmp begins Tue Aug 109:01:10 2000 ### /var/log/wtmp


  shell>> last -2minery
  minery pts/0140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)
  minery pts/0140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)
  wtmp begins Tue Aug 109:01:10 2000


  名称:login
  这个命令都不会就不要干算了!呵呵我也不在这里多费笔墨耽误大家美好青春了^_^

  名称:passwd
  使用权限:所有使用者
  使用方式:passwd [-k] [-l] [-u [-f]][-d] [-S] [username]
  说明:用来更改使用者的密码
  参数:
  -k
  -l
  -u
  -f
  -d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用.
  -S 显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用.
  [username] 指定帐号名称.

  名称:who
  使用权线:所有使用者都可使用
  使用方式:who - [husfV] [user]
  说明:显示系统中有那些使用者正在上面,显示的资料包含了使用者 ID,使用的终端机,从那边连上来的,上线时间,呆滞时间,CPU 使用量,动作等等。
  把计:
  -h:不要显示标题列
  -u:不要显示使用者的动作/工作
  -s:使用简短的格式来显示
  -f:不要显示使用者的上线位置
  -V:显示程式版本

  名称:/etc/aliases
  使用权限:系统管理者
  使用方式: 请用 newaliases 更新资料库
  说明:
  sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 redlinux@link.ece.uci.edu 的 mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。
  /etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。范例:
  # newaliases

  下面命令会做相同的事,
  # sendmail -bi

  相关命令:
  mail, mailq, newaliases,sendmail

  ” mail [返回]

  名称:mail
  使用权限:所有使用者
  使用方式:mail [-iInv] [-s subject][-c cc-addr] [-b bcc-addr] user1 [user 2 ...]
  说明:
  mail 不仅只是一个指令, mail 还是一个电子邮件程式,不过利用 mail 来读信的人应该很少吧!对于系统管理者来说 mail 就很有用,因为管理者可以用 mail 写成 script ,定期寄一些备忘录提醒系统的使用者。


  参数:
  i 忽略 tty 的中断讯号。 (interrupt)
  I 强迫设成互动模式。 (Interactive)
  v 列印出讯息,例如送信的地点,状态等等。 (verbose)
  n 不读入 mail.rc 设定档。
  s 邮件标题。
  c cc 邮件地址。
  b bcc 邮件地址。
  范例:
  将信件送给一个或以上的电子邮件地址,由于没有加入其他的选项,使用者必须输入标题与信件的内容等。而 user2 没有主机位置,就会送给邮件伺服器的 user2 使用者。
  mail user1@email.address
  mail user1@email.addressuser2

  将 mail.txt 的内容寄给 user2 同时 cc 给 user1 。如果将这一行指令设成 cronjob 就可以定时将备忘录寄给系统使用者。
  mail -s 标题 -c user1 user2 < mail.txt

  指令:mesg
  使用权限:所有使用者
  使用方式:mesg [y|n]
  说明 : 决定是否允许其他人传讯息到自己的终端机介面
  把计 :
  y:允许讯息传到终端机介面上。
  n:不允许讯息传到终端机介面上 。
  如果没有设定,则讯息传递与否则由终端机界面目前状态而定。
  例子:
  改变目前讯息设定,改成不允许讯息传到终端机介面上:
  mesg n

  与 mesg 相关的指令有: talk,write,wall。


  名称:/etc/aliases
  使用权限:系统管理者
  使用方式: newaliases
  说明:
  sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 redlinux@link.ece.uci.edu 的 mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。

  /etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。

  参数:没有任何参数。 范例:
  # newaliases

  下面命令会做相同的事,
  # sendmail -bi
  相关命令:
  mail, mailq, newaliases,sendmail

  名称:talk
  使用权限:所有使用者
  使用方式:
  talk person [ttyname]
  说明:与其他使用者对谈
  把计:
  person:预备对谈的使用者帐号,如果该使用者在其他机器上,则可输入 person@machine.name
  ttyname:如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息
  例子.1:
  与现在机器上的使用者Rollaend对谈,此时 Rollaend 只有一个连线:
  talk Rollaend
  接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk jzlee`即可开始对谈,结束请按 ctrl+c
  例子.2 :与linuxfab.cx上的使用者Rollaend对谈,使用pts/2来对谈:
  talk Rollaend@linuxfab.cxpts/2

  接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk jzlee@jzlee.home`即可开始对谈,结束请按 ctrl+c
  注意:若萤幕的字会出现不正常的字元,试着按 ctrl+l 更新萤幕画面。

  名称:wall
  使用权限:所有使用者
  使用方式:
  wall [ message ]
  使用说明:
  wall 会将讯息传给每一个 mesg 设定为 yes 的上线使用者。当使用终端机介面做为标准传入时, 讯息结束时需加上 EOF (通常用 Ctrl+D)
  例子:
  传讯息"hi" 给每一个使用者:
  wall hi

  名称:write
  使用权限:所有使用者
  使用方式:
  write user [ttyname]
  说明:传讯息给其他使用者
  把计:
  user:预备传讯息的使用者帐号
  ttyname:如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息
  例子.1:
  传讯息给 Rollaend,此时 Rollaend 只有一个连线:
  write Rollaend


  接下来就是将讯息打上去,结束请按 ctrl+c

  例子.2 :传讯息给 Rollaend,Rollaend 的连线有 pts/2,pts/3:
  write Rollaend pts/2

  接下来就是将讯息打上去,结束请按 ctrl+c
  注意:若对方设定 mesg n,则此时讯席将无法传给对方

  名称:kill
  使用权限:所有使用者
  使用方式:
  kill [ -s signal | -p ] [-a ] pid ...
  kill -l [ signal ]
  说明:kill 送出一个特定的信号 (signal) 给行程 id 为 pid 的行程根据该信号而做特定的动作, 若没有指定, 预设是送出终止 (TERM) 的信号
  把计:
  -s (signal):其中可用的讯号有 HUP (1), KILL (9), TERM(15), 分别代表着重跑, 砍掉, 结束; 详细的信号可以用 kill -l
  -p:印出 pid , 并不送出信号
  -l (signal):列出所有可用的信号名称
  范例:
  将 pid 为 323 的行程砍掉 (kill):
  kill -9 323
  将 pid 为 456 的行程重跑 (restart):
  kill -HUP 456


  名称:nice
  使用权限:所有使用者

  使用方式:nice [-n adjustment][-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]]
  说明:以更改过的优先序来执行程式, 如果未指定程式, 则会印出目前的排程优先序, 内定的 adjustment 为 10, 范围为 -20 (最高优先序) 到 19 (最低优先序)
  把计:
  -n adjustment, -adjustment,--adjustment=adjustment 皆为将该原有优先序的增加 adjustment
  --help 显示求助讯息
  --version 显示版本资讯
  范例:
  将 ls 的优先序加 1 并执行:
  nice -n 1 ls

  将 ls 的优先序加 10 并执行:
  nice ls将 ls 的优先序加 10 并执行

  注意:优先序 (priority) 为作业系统用来决定 CPU 分配的参数,Linux 使用『回合制(round-robin)』的演算法来做 CPU 排程,优先序越高,所可能获得的 CPU时间就越多。



  名称:ps
  使用权限:所有使用者
  使用方式:ps [options] [--help]
  说明:显示瞬间行程 (process) 的动态
  参数:
  ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
  -A 列出所有的行程
  -w 显示加宽可以显示较多的资讯
  -au 显示较详细的资讯
  -aux 显示所有包含其他使用者的行程

  au(x) 输出格式:

  USER PID %CPU %MEM VSZ RSSTTY STAT START TIME COMMAND
  USER: 行程拥有者
  PID: pid
  %CPU: 占用的 CPU 使用率
  %MEM: 占用的记忆体使用率
  VSZ: 占用的虚拟记忆体大小
  RSS: 占用的记忆体大小
  TTY: 终端的次要装置号码 (minor device number oftty)
  STAT: 该行程的状态:
  D: 不可中断的静止 (通悸□□缜b进行 I/O 动作)
  R: 正在执行中
  S: 静止状态
  T: 暂停执行
  Z: 不存在但暂时无法消除
  W: 没有足够的记忆体分页可分配
  <: 高优先序的行程
  N: 低优先序的行程
  L: 有记忆体分页分配并锁在记忆体内 (即时系统或捱A I/O)
  START: 行程开始时间
  TIME: 执行的时间
  COMMAND:所执行的指令

  范例:

  ps
  PID TTY TIME CMD
  2791 ttyp0 00:00:00 tcsh
  3092 ttyp0 00:00:00 ps
  % ps -A
  PID TTY TIME CMD
  1 ? 00:00:03 init
  2 ? 00:00:00 kflushd
  3 ? 00:00:00 kpiod
  4 ? 00:00:00 kswapd
  5 ? 00:00:00 mdrecoveryd
  .......
  % ps -aux
  USER PID %CPU %MEM VSZ RSSTTY STAT START TIME COMMAND
  root 1 0.0 0.7 1096 472 ? SSep10 0:03 init [3]
  root 2 0.0 0.0 0 0 ? SWSep10 0:00 [kflushd]
  root 3 0.0 0.0 0 0 ? SWSep10 0:00 [kpiod]
  root 4 0.0 0.0 0 0 ? SWSep10 0:00 [kswapd]
  ........


  名称:pstree
  使用权限:所有使用者
  使用方式:
  pstree [-a] [-c] [-h|-Hpid][-l] [-n] [-p] [-u] [-G|-U] [pid|user]
  pstree -V
  说明:将所有行程以树状图显示, 树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root) ,如果有指定使用者 id , 则树状图会只显示该使用者所拥有的行程
  参数:
  -a 显示该行程的完整指令及参数, 如果是被记忆体置换出去的行程则会加上括号
  -c 如果有重覆的行程名, 则分开列出 (预设值是会在前面加上 *
  范例:

  pstree

  init-+-amd
  |-apmd
  |-atd
  |-httpd---10*[httpd]
  %pstree -p
  init(1)-+-amd(447)
  |-apmd(105)
  |-atd(339)
  %pstree -c
  init-+-amd
  |-apmd
  |-atd
  |-httpd-+-httpd
  | |-httpd
  | |-httpd
  | |-httpd
  ....



  名称:renice
  使用权限:所有使用者

  使用方式:renice priority [[-p] pid...] [[-g] pgrp ...] [[-u] user ...]

  说明:重新指定一个或多个行程(Process)的优先序(一个或多个将根据所下的参数而定)
  把计:
  -p pid 重新指定行程的 id 为 pid 的行程的优先序
  -g pgrp 重新指定行程群组(process group)的 id 为 pgrp 的行程 (一个或多个) 的优先序
  -u user 重新指定行程拥有者为 user 的行程的优先序
  范例:
  将行程 id 为 987 及 32 的行程与行程拥有者为 daemon 及 root 的优先序号码加 1:
  renice +1 987 -u daemonroot -p 32
  注意:每一个行程(Process)都有一个唯一的 (unique) id


  名称:top
  使用权限:所有使用者
  使用方式:top [-] [d delay] [q] [c][S] [s] [i] [n] [b]
  说明:即时显示 process 的动态
  把计:
  d:改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
  q:没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
  c:切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S:累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
  s:安全模式,将交谈式指令取消, 避免潜在的危机
  i:不显示任何闲置 (idle) 或无用 (zombie) 的行程
  n:更新的次数,完成后将会退出 top
  b:批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
  范例:
  显示更新十次后退出 ;
  top -n 10

  使用者将不能利用交谈式指令来对行程下命令:
  top -s

  将更新显示二次的结果输入到名称为 top.log 的档案里:
  top -n 2 -b < top.log

  名称:skill
  使用权限:所有使用者
  使用方式: skill [signal to send][options] 选择程序的规则
  说明:

  送个讯号给正在执行的程序,预设的讯息为 TERM (中断) , 较常使用的讯息为 HUP , INT , KILL , STOP ,CONT ,和 0
  讯息有三种写法:分别为 -9 , -SIGKILL , -KILL , 可以使用 -l 或 -L 已列出可使用的讯息。
  一般参数:
  -f 快速模式/尚未完成
  -i 互动模式/ 每个动作将要被确认
  -v 详细输出/ 列出所选择程序的资讯
  -w 智能警告讯息/ 尚未完成
  -n 没有动作/ 显示程序代号
  参数:选择程序的规则可以是, 终端机代号,使用者名称,程序代号,命令名称。
  -t 终端机代号 ( tty 或 pty )
  -u 使用者名称
  -p 程序代号 ( pid )
  -c 命令名称 可使用的讯号:
  以下列出已知的讯号名称,讯号代号,功能。

  名称 (代号) 功能/ 描述
  ALRM 14 离开
  HUP 1 离开
  INT 2 离开
  KILL 9 离开/ 强迫关闭
  PIPE 13 离开
  POLL 离开
  PROF 离开
  TERM 15 离开
  USR1 离开
  USR2 离开
  VTALRM 离开
  STKFLT 离开/ 只适用于i386, m68k, arm 和 ppc 硬体
  UNUSED 离开/ 只适用于i386, m68k, arm 和 ppc 硬体
  TSTP 停止 /产生与内容相关的行为
  TTIN 停止 /产生与内容相关的行为
  TTOU 停止 /产生与内容相关的行为
  STOP 停止 /强迫关闭
  CONT 从新启动 /如果在停止状态则从新启动,否则忽略
  PWR 忽略 /在某些系统中会离开
  WINCH 忽略
  CHLD 忽略
  ABRT 6 核心
  FPE 8 核心
  ILL 4 核心
  QUIT 3 核心
  SEGV 11 核心
  TRAP 5 核心
  SYS 核心 /或许尚未实作
  EMT 核心 /或许尚未实作
  BUS 核心 /核心失败
  XCPU 核心 /核心失败
  XFSZ 核心 /核心失败
  范例:
  停止所有在 PTY 装置上的程序
  skill -KILL -v pts/*
  停止三个使用者 user1 , user2 , user3
  skill -STOP user1 user2user3

  其他相关的命令: kill

原创粉丝点击