文档视界 最新最全的文档下载
当前位置:文档视界 › Shell命令

Shell命令

Shell命令
Shell命令

Shell

Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。

4.1.1 Shell 的基本概念

1. 什么是S hell

Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。Shell 在L inux 系统中具有极其重要的地位,如图4-1 所示

第 4 章 Shell 与 V i 编辑器

- 71 -

diff

grep

vi multitasking

sh gcc

device hardware

interface

kernn e l

TCP/IP

stack

bash

utilii t es

图 4-1 Linux 系统结构组成

2. Shell 的功能

Shell 最重要的功能是命令解释,从这种意义上来说,Shell 是一个命令解释器。Linux

系统中的所有可执行文件都可以作为 Shell 命令来执行。将可执行文件作一个分类,如表 4-1 所示。

表 4-1 可执行文件的分类

部的解释器将其解释为系统功能调用并转交给内核执行;若是外部命令或实用程序就试图 在硬盘中查找该命令并将其调入内存,再将其解释为系统功能调用并转交给内核执行。在 查找该命令时分为两种情况:

用户给出了命令路径,Shell 就沿着用户给出的路径查找,若找到则调入内存,若没有 则输出提示信息;

用户没有给出命令的路径,Shell 就在环境变量 PATH 所制定的路径中依次进行查找, 若找到则调入内存,若没找到则输出提示信息。

图 4-2 描述了 S hell 是如何完成命令解释的。

第4章 Shell 与V i 编辑器

内核中的系统功能调用

图4-2 Shell 执行命令解释的过程

此外,Shell 还具有如下的一些功能:

?SHELL 环境变量

?正则表达式

?输入输出重定向与管道

3. Shell 的主要版本

表4-2 列出了几种常见的S hell 版本。

表4-2 Shell 的不同版本

- 72 -

第 4 章 Shell 与 V i 编辑器

4.1.2 Shell 环境变量

Shell 支持具有字符串值的变量。Shell 变量不需要专门的说明语句,通过赋值语句完 成变量说明并予以赋值。在命令行或 Shell 脚本文件中使用$name 的形式引用变量 name 的 值。

1. 变量的定义和引用

在 S hell 中,变量的赋值有下列句法格式:

name=string

其中,name 是变量名,它的值就是 s tring ,“=”是赋值符号。变量名是以字母或下划 线开头的字母、数字和下划线字符序列。

通过在变量名(name )前加$字符(如$name )引用变量的值,引用的结果就是用字符 串 string 代替$name 。此过程也称为变量替换。

在定义变量时,若 string 中包含空格、制表符和换行符,则 string 必须用?string ?或 者”s ting ”的形式,即用单(双)引号将其括起来。双引导内允许变量替换,而单引导内则 不可以。

下面给出一个定义和使用 S hell 变量的例子。

第4章 Shell 与V i 编辑器

Je t?aime

- 74 -

第4章 Shell 与V i 编辑器

2. Shell 变量的作用域

与程序设计语言中的变量一样,Shell 变量有其规定的作用范围。Shell 变量分为局部变量和全局变量。

?局部变量的作用范围仅仅限制在其命令行所在的S hell 或S hell 脚本文件中。

?全局变量的作用范围则包括本S hell 进程及其所有子进程。

?可以使用e xport 内置命令将局部变量设置为全局变量。

下面给出一个S hell 变量作用域的例子。

第4章 Shell 与V i 编辑器

$ echo $var1

Linux

$ echo var2

unix

$

3. 环境变量

环境变量是指由S hell 定义和赋初值的S hell 变量。Shell 用环境变量来确定查找路径、注册目录、终端类型、终端名称、用户名等。所有环境变量都是全局变量,并可以由用户重新设置。表4-3 列出了一些系统中常用的环境变量。

表4-3 Shell 中的环境变

令,命令的格式是:

set 环境变量=变量的值

例如,设置用户的主目录为/home/johe,可以用以下命令:

$ set HOME=/home/john

不加任何参数地直接使用set 命令可以显示出用户当前所有环境变量的设置,如下所示:

$ set

BASH=/bin/Bash

BASH_ENV=/root/.bashrc

(略)

PA TH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11

PS1=…[\u@\h \W]\$?

PS2=…>?

- 76 -

第4章 Shell 与V i 编辑器

SHELL=/bin/Bash

可以看到其中路径P ATH 的设置为:

- 77 -

第 4 章 Shell 与 V i 编辑器

- 78 -

PA TH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11

总共有 7 个目录,Bash 会在这些目录中依次搜索用户输入的命令的可执行文件。 在环境变量前面加上$符号,表示引用环境变量的值,例如:

# cd $HOME

将把目录切换到用户的主目录。

当修改 P ATH 变量时,如:将一个路径/tmp 加到 P ATH 变量前,应设置为:

# PA TH=/tmp:$PA TH

此时,在保存原有 P ATH 路径的基础上进行了添加。Shell 在执行命令前,会先查找这 个

目录。

要将环境变量重新设置为系统默认值,可以使用 unset 命令。例如,下面的命令用于 将当前的语言环境重新设置为默认的英文状态。

# unset LANG

4. 工作环境设置文件

Shell 环境依赖于多个文件的设置。用户并不需要每次登录后都对各种环境变量进行手 工设置,通过环境设置文件,用户的工作环境的设置可以在登录的时候自动由系统来完成。 环境设置文件有两种,一种是系统环境设置文件,另一种是个人环境设置文件。

1)系统中的用户工作环境设置文件 z 登录环境设置文件:/etc/profile z 非登录环境设置文件:/etc/bashrc 2)用户设置的环境设置文件

z 登录环境设置文件:$HOME/.Bash_profile z 非登录环境设置文件:$HOME/.bashrc 注意:只有在特定的情况下才读取 p rofile 文件,确切地说是在用户登录的时候。当运 行 Shell 脚本以后,就无需再读 p rofile 。

系统中的用户环境文件设置对所有用户均生效,而用户设置的环境设置文件对用户自 身生效。用户可以修改自己的用户环境设置文件来覆盖在系统环境设置文件中的全局设置。 例如:

1)用户可以将自定义的环境变量存放在$HOME/.Bash_profile 中; 2)用户可以将自定义的别名存放在$HOME/.bashrc 中,以便在每次登陆和调用子 S hell 时生效。

4.1.3 正则表达式

1. grep 命令

在第三章我们已介绍过 g rep 命令的用法。grep 命令用来在文本文件中查找内容,它的 名

第4章 Shell 与V i 编辑器

字源于“global regular expression print”。指定给g rep 的文本模式叫做“正则表达式”。

- 79 -

第4章 Shell 与V i 编辑器

它可以是普通的字母或者数字,也可以使用特殊字符来匹配不同的文本模式。我们稍后将更详细地讨论正则表达式。grep 命令打印出所有符合指定规则的文本行。例如:

$ grep ?match_string? file

即从指定文件中找到含有字符串的行。

2. 正则表达式字符

Linux 定义了一个使用正则表达式的模式识别机制。Linux 系统库包含了对正则表达式的支持,鼓励程序中使用这个机制。

遗憾的是s he11 的特殊字符辨认系统没有利用正则表达式,因为它们比S hell 自己的缩写更加讨厌和难用。Shell 的特殊字符和正则表达式是很相似的,但是为了正确的利用正则表达式,用户必须了解两者之间的区别。

注意:由于正则表达式使用了一些特殊字符,所以所有的正则表达式都必须用单引号括起来。

正则表达式字符可以包含某些特殊的模式匹配字符。句点匹配任意一个字符,相当于shel1 的问号。紧接句号之后的星号匹配零个或多个任意字符,相当于S hell 的星号。方括号的用法跟S hell 的一样,只是用^代替了!表示匹配不在指定列表内的字符。

表4-4 列出了正则表达式的模式匹配字符。

表4-4 字符表达式

表4-5 量词

表4-6 控制字符

^ 只在行头匹配正则表达式

$ 只在行末匹配正则表达式

\ 引用特殊字符

- 80 -

第4章 Shell 与V i 编辑器

控制字符是用来标记行头或者行尾的,支持统计字符串的出现次数。

- 81 -

第 4 章 Shell 与 V i 编辑器

- 82 -

非特殊字符代表它们自己,如果要表示特殊字符需要在前面加上反斜杠。

例如:

help 匹配包含 h elp 的行..

\..$ 匹配倒数第二个字符是句点的行 ^...$

匹配只有 3 个字符的行 ^[0-9]\{3\}[^0-9] 匹配以 3 个数字开头跟着是一个非数字字符的行 ^\([A-Z][A-Z]\)*$

匹配只包含偶数个大写字母的行

4.1.4 输入输出重定向与管道

1. 重定向 所谓重定向,就是不使用系统的标准输入端口、标准输出端口或标准错误端口,而进

行重新的指定,所以重定向分为输入重定向、输出重定向和错误重定向。通常情况下重定 向到一个文件。在 S hell 中,要实现重定向主要依靠重定向符实现,即 S hell 是检查命令行 中有无重定向符来决定是否需要实施重定向。表 4-7 列出了常用的重定向符。

表 4-7 重定向符

动创建)且清空该文件(文中己存在的数据将被删除)。当命令完成时,命令解释程序会正 确地关闭该文件,而命令在执行时并不知道它的输出流已被重定向。

下面举几个使用重定向的例子:

(1)将 l s 命令生成的/tmp 目录的一个清单存到当前目录中的 d ir 文件中。

$ ls –l /tmp >dir

(2)将 l s 命令生成的/etc 目录的一个清单以追加的方式存到当前目录中的 d ir 文件中。

$ ls –l /tmp >>dir

第4章 Shell 与V i 编辑器

(3)passwd 文件的内容作为w c 命令的输入。

$ wc

(4)将命令m yprogram 的错误信息保存在当前目录下的e rr_file 文件中。

$ myprogram 2>err_file

(5)将命令myprogram 的输出信息和错误信息保存在当前目录下的output_file 文件中。

$ myprogram &>output_file

(6)将命令l s 的错误信息保存在当前目录下的e rr_file 文件中。

$ ls –l 2>err_file

注意:该命令并没有产生错误信息,但e rr_file 文件中的原文件内容会被清空。

当我们输入重定向符时,命令解释程序会检查目标文件是否存在。如果不存在,命令解释程序将会根据给定的文件名创建一个空文件;如果文件已经存在,命令解释程序则会清除其内容并准备写入命令的输出到结果。这种操作方式表明:当重定向到一个已存在的文件时需要十分小心,数据很容易在用户还没有意识到之前就丢失了。

Bash 输入输出重定向可以通过使用下面选项设置为不覆盖己存在文件:

$ set -o noclobber

这个选项仅用于对当前命令解释程序输入输出进行重定向,而其他程序仍可能覆盖已存在的文件。

(7)/dev/null

空设备的一个典型用法是丢弃从f ind 或g rep 等命令送来的错误信息:

$ grep delegate /etc/* 2>/dev/null

上面的grep 命令的含义是从/etc 目录下的所有文件中搜索包含字符串delegate 的所有的行。由于我们是在普通用户的权限下执行该命令,grep 命令是无法打开某些文件的,系统会显示一大堆“未得到允许”的错误提示。通过将错误重定向到空设备,我们可以在屏幕上只得到有用的输出。

2. 管道

许多Linux 命令具有过滤特性,即一条命令通过标准输入端口接收一个文件中的数据,命令执行后产生的结果数据又通过标准输出端口送给后一条命令,作为该命令的输入数据。后一条命令也是通过标准输入端口接收输入数据。

Shell 提供管道命令“|”将这些命令前后衔接在一起,形成一个管道线。格式为:

命令1|命令2|……|命令n

管道线中的每一条命令都作为一个单独的进程运行,每一条命令的输出作为下一条命令的输入。由于管道线中的命令总是从左到右顺序执行的,因此管道线是单向的。

管道线的实现创建了L inux 系统管道文件并进行重定向,但是管道不同于I/O 重定向,输入重定向导致一个程序的标准输入来自某个文件,输出重定向是将一个程序的标准输出写到一个文件中,而管道是直接将一个程序的标准输出与另一个程序的标准输入相连接,

- 83 -

第4章 Shell 与V i 编辑器

不需要经过任何中间文件。

例如:

$who >tmpfile

我们运行命令w ho 来找出谁已经登录进入系统。该命令的输出结果是每个用户对应一行数据,其中包含了一些有用的信息,我们将这些信息保存在临时文件中。

现在我们运行下面的命令:

$ wc -l

该命令会统计临时文件的行数,最后的结果是登陆入系统中的用户的人数。

我们可以将以上两个命令组合起来。

$ who|wc -l

管道符号告诉命令解释程序将左边的命令(在本例中为w ho)的标准输出流连接到右边的命令(在本例中为w c -l)的标准输入流。现在命令who 的输出不经过临时文件就可以直接送到命令w c 中了。

下面再举几个使用管道的例子:

(1)以长格式递归的方式分屏显示/etc 目录下的文件和目录列表。

$ ls –Rl /etc | more

(2)分屏显示文本文件/etc/passwd 的内容。

$ cat /etc/passwd | more

(3)统计文本文件/etc/passwd 的行数、字数和字符数。

$ cat /etc/passwd | wc

(4)查看是否存在j ohn 用户帐号。

$ cat /etc/passwd | grep john

(5)查看系统是否安装了a pache 软件包。

$ rpm –qa | grep apache

(6)显示文本文件中的若干行。

$ tail +15 myfile | head -3

管道仅能操纵命令的标准输出流。如果标准错误输出未重定向,那么任何写入其中的信息都会在终端显示屏幕上显示。管道可用来连接两个以上的命令。由于使用了一种被称为过滤器的服务程序,多级管道在Linux 中是很普遍的。过滤器只是一段程序,它从自己的标准输入流读入数据,然后写到自己的标准输出流中,这样就能沿着管道过滤数据。在下例中:

$ who|grep ttyp| wc –l

who 命令的输出结果由grep 命令来处理,而grep 命令则过滤掉(丢弃掉)所有不包含字符串"ttyp"的行。这个输出结果经过管道送到命令wc,而该命令的功能是统计剩余的行数,这些行数与网络用户的人数相对应。

- 84 -

第4章 Shell 与V i 编辑器

Linux 系统的一个最大的优势就是按照这种方式将一些简单的命令连接起来,形成更复杂的、功能更强的命令。那些标准的服务程序仅仅是一些管道应用的单元模块,在管道中它们的作用更加明显。

4.1.5 Shell 脚本

Shell 最强大的功能在于它是一个功能强大的编程语言。用户可以在文件中存放一系列的命令,这被称为S hell 脚本或S hell 程序,将命令、变量和流程控制有机地结合起来将会得到一个功能强大的编程工具。Shell 脚本语言非常擅长处理文本类型的数据,由于L inux 系统中的所有配置文件都是纯文本的,所以Shell 脚本语言在管理Linux 系统中发挥了巨大作用。

1. 脚本的内容

Shell 脚本是以行为单位的,在执行脚本的时候会分解成一行一行依次执行。脚本中所包含的成分主要有注释、命令、Shell 变量和结构控制语句。其中:

1)注释。用于对脚本进行解释和说明,在注释行的前面要加上符号“#”,这样在执行脚本的时候S hell 就不会对该行进行解释。

2)命令。在S hell 脚本中可以出现任何在交互方式下可以使用的命令。

3)变量。Shell 支持具有字符串值的变量。Shell 变量不需要专门的说明语句,通过赋值语句完成变量说明并予以赋值。在命令行或S hell 脚本文件中使用$name 的形式引用变量name 的值。

4)流程控制。主要为一些用于流程控制的内部命令。表

4-8 列出了S hell 用于流程控制的内置命令

表4-8 Shell 中用于流程控制的内置命令

2. 脚本的建立与执行

用户可以使用任何文本编辑器编辑S hell 脚本文件,如V i、gedit 等。

Shell 对S hell 脚本文件的调用可以采用3种方式:

- 85 -

第4章 Shell 与V i 编辑器

1)一种是将文件名作为S hell 命令的参数,其调用格式为:

$ Bash script_file

当要被执行脚本文件没有可执行权限时只能使用这种调用方式。

2)另一种调用方法是先将脚本文件的访问权限改为可执行,以便该文件可以作为执行文件调用。具体方法是:

$ chmod +x script_file

$ PA TH=$PA TH:$PWD

$ script_file

3)当执行一个脚本文件时,Shell 就产生一个子S hell(即一个子进程)去执行文件中的命令。因此,脚本文件中的变量值不能传递到当前Shell(即父进程)。为了使的脚本文件中的变量值传递到当前S hell,必须在命令文件名前面加“.”命令。即:

- 86 -

第 4 章 Shell 与 V i 编辑器

- 87 -

$ echo $mydir

/home/johe

//由于这种执行脚本的方式是在当前 S hell 中执行,

//当脚本执行结束变量依然有值

4.2 Vi 编辑器

Vi 是 V isual interface 的简称,它可以执行输出、删除、查找、替换、块操作等众多文 本

操作,而且用户可以根据自己的需要对其进行定制,这是其他编辑程序所没有的。Vi 不 是一个排版程序,它不像 W ORD 或 W PS 那样可以对字体、格式、段落等其他属性进行编 排,它只是一个文本编辑程序。Vi 是全屏幕文本编辑器,它没有菜单,只有命令。

4.2.1 Vi 的启动与退出

在系统提示符后输入 V i 和想要编辑(或建立)的文件名,便可进入 V i ,如:

$ vi myfile

$ vi

如果只输入 V i ,而不带文件名,也可以进入 V i 。如图 4-3 所示。

第4章 Shell 与V i 编辑器

图4-3 Vi 编辑环境

- 88 -

第4章 Shell 与V i 编辑器

在命令模式下键入:q,:q!,:wq 或:x(注意:号),就会退出V i。其中:wq 和:x 是存盘退出,而:q 是直接退出。如果文件已有新的变化,Vi 会提示你保存文件而:q 命令也会失效,这时你可以用:w 命令保存文件后再用:q 退出,或用:wq 或:x 命令退出,如果你不想保存改变后的文件,你就需要用:q!命令,这个命令将不保存文件而直接退出V i,例如::w 保存;

:w filename 另存为f ilename

:wq! 保存退出

:wq! filename 注:以f ilename 为文件名保存后退出

:q! 不保存退出

:x 应该是保存并退出,功能和:wq!相同

4.2.2 Vi 的工作模式

Vi 有3种基本工作模式:编辑模式、插入模式和命令模式。考虑到各种用户的需要采用状态切换的方法实现工作模式的转换,切换只是习惯性的问题,一旦你熟练的使用上了Vi 你就会觉得它其实也很好用。

进入Vi 之后,首先进入的就是编辑模式,进入编辑模式后Vi 等待编辑命令输入而不是文本输入,也就是说这时输入的字母都将作为编辑命令来解释。

进入编辑模式后光标停在屏幕第一行首位,用_表示,余各行的行首均有一个“~”符号,表示该行为空行。最后一行是状态行,显示出当前正在编辑的文件名及其状态。如果是[New File],则表示该文件是一个新建的文件;如果输入V i 带文件名后,文件已在系统中存在,则在屏幕上显示出该文件的内容,并且光标停在第一行的首位,在状态行显示出该文件的文件名、行数和字符数。

在编辑模式下输入插入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入插入模式。在插入模式下,用户输入的任何字符都被V i 当作文件内容

保存起来,并将其显示在屏幕上。在文本输入过程中(插入模式下),若想回到命令模式下,按E SC 键即可。

在编辑模式下,用户按“:”键即可进入命令模式,此时V i 会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为命令模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的。末行命令执行完后,Vi 自动回到编辑模式。

若在命令模式下输入命令过程中改变了主意,可用退格健将输入的命令全部删除之后,再按一下退格键,即可使V i 回到编辑模式。

4.2.3 Vi 命令

在编辑模式下,输入如表4-9 所示的命令均可进入插入模式。

- 89 -

CRT常用命令

SecureCRT 常用命令 2010年4月26日 | 分类: Linux | 标签: SecureCRT 常用命令: 一、ls 只列出文件名(相当于dir,dir也可以使用) -A:列出所有文件,包含隐藏文件。 -l:列表形式,包含文件的绝大部分属性。 -R:递归显示。 –help:此命令的帮助。 二、cd 改变目录 cd /:进入根目录 cd :回到自己的目录(用户不同则目录也不同,root为/root,xxt为/home/xxt cd ..:回到上级目录 pwd:显示当前所在的目录 三.less 文件名:查看文件内容。 四.q 退出打开的文件。 五.上传文件: rz 选择要传送的文件,确定。 六.下载文件: sz 指定文件名,enter敲,即下载到了secureCRT/download目录下。 七:删除文件: rm 删除文件,rmdir 删除空目录。 八.显示最近输入的20条命令:history 20 九.获得帮助命令–help查看命令下详细参数:如:rz –help , sz –help 。 十.cd 进入某个文件夹的命令: mkdir+文件夹名创建某个文件夹的命令 sz+文件名从服务器端向本机发送文件的命令 rz 从本机向服务器端传送文件的命令 ll 列出当前目录下的所有文件,包括每个文件的详细信息 dir 对当前文件夹 vi 打开当前文件 十一.在编辑某个文件的时候: a 切换到编辑模式 ctrl+c 退出编辑模式

dd 删除整行 :q 退出当前文件 :w 写入并保存当前文件 -f 强行xx的参数。。。 其它命令: 1.ps -ef //查看server的进程,以列表形式显示的server进程。 ps 显示当前在系统运行的进程 /usr/bin/ps [选项] -e 显示每个现在运行的进程 -f 生成一个完全的列表 实际操作: ————————————– 1 SSH客户端连接到10.5.1.55系统(参见《启动远程客户端说明SecureCRT.doc》) $ cd /home/bea2/user_projects/csdomain/bin 2 查看weblogic92服务进程 $ ps -eaf | grep weblogic bea2 327926 331940 0 13:08:45 pts/4 0:00 grep weblogic webadmin 421908 368956 0 Sep 24 - 4:13 /usr/java5_64/bin/java -Xms256m -Xmx512m -da -Dplatform.home=/home/weblogic/bea/weblogic92 -Dwls.home=/home/weblogic/bea/weblogic92/server -Dwli.home=/home/weblogic/bea/weblogic92/integration -Dweblogic.management.discover=true -Dwlw.iterativeDev=false -Dwlw.testConsole=false -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/home/weblogic/bea/patch_weblogic923/profiles/de fault/sysext_manifest_classpath https://www.docsj.com/doc/0611969658.html,=AdminServer -Djava.security.policy=/home/weblogic/bea/weblogic92/server/lib/webl ogic.policy weblogic.Server bea2 491796 385044 17 00:12:50 pts/6 182:55 /usr/java5_64/bin/java -Xms6g -Xmx8g -javaagent:/home/bea2/user_projects/csdomain/Introscope/wily/Agent.j ar -Dcom.wily.introscope.agentProfile=/home/bea2/user_projects/csdomain /Introscope/wily/IntroscopeAgent.profile -Dcom.wily.introscope.agent.agentName=AdminServer -da -Dplatform.home=/home/weblogic/bea/weblogic92 -Dwls.home=/home/weblogic/bea/weblogic92/server -Dwli.home=/home/weblogic/bea/weblogic92/integration

Shell命令

Shell Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。 4.1.1 Shell 的基本概念 1. 什么是S hell Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。Shell 在L inux 系统中具有极其重要的地位,如图4-1 所示

第 4 章 Shell 与 V i 编辑器 - 71 - diff grep vi multitasking sh gcc device hardware interface kernn e l TCP/IP stack bash utilii t es 图 4-1 Linux 系统结构组成 2. Shell 的功能 Shell 最重要的功能是命令解释,从这种意义上来说,Shell 是一个命令解释器。Linux 系统中的所有可执行文件都可以作为 Shell 命令来执行。将可执行文件作一个分类,如表 4-1 所示。 表 4-1 可执行文件的分类 部的解释器将其解释为系统功能调用并转交给内核执行;若是外部命令或实用程序就试图 在硬盘中查找该命令并将其调入内存,再将其解释为系统功能调用并转交给内核执行。在 查找该命令时分为两种情况: 用户给出了命令路径,Shell 就沿着用户给出的路径查找,若找到则调入内存,若没有 则输出提示信息; 用户没有给出命令的路径,Shell 就在环境变量 PATH 所制定的路径中依次进行查找, 若找到则调入内存,若没找到则输出提示信息。 图 4-2 描述了 S hell 是如何完成命令解释的。

最常用的Shell命令

Shell命令行操作 Linux shell 简介 Linux shell指的是一种程序,有了它,用户就能通过键盘输入指令来操作计算机了。Shell会执行用户输入的命令,并且在显示器上显示执行结果。这种交互的全过程都是基于文本的,与其他各章介绍的图形化操作不同。这种面向命令行的用户界面被称为CLI(Command Line interface)。在图形化用户界面(GUI)出现之前,人们一直是通过命令行界面来操作计算机的。 现在,基于图形界面的工具越来越多,许多工作都不必使用Shell就可以完成了。然而,专业的Linux用户认为Shell是一个非常有用的工具,学习Linux时一定要学习Shell,至少要掌握一些基础知识和基本的命令 启动shell 在启动Linux桌面系统后,Shell已经在后台运行起来了,但并没有显示出来。如果想让它显示出来, 按如下的组合键就可以: + + 组合键中的F2可以替换为 F3、F 4、F 5、F6。 如果要回到图形界面,则按如下组合键: + + 另外,在图形桌面环境下运行“系统终端”也可以执行Shell命令,与用组合键切换出来的命令行界面

是等效的。“系统终端”启动后是一个命令行操作窗口,可以随时放大缩小,随时关闭,比较方便,推荐使用。启动“系统终端”的方法是: 【开始】→【应用程序】→【附件】→【系统终端】 该软件允许建立多个Shell客户端,它们相互独立,可以通过标签 在彼此之间进行切换。 Shell命令基本规则 一般格式 Shell命令的一般格式如下: 命令名【选项】【参数1】【参数2】... 【选项】是对命令的特别定义,以减号(-)开始,多个选项可以用一个减号(-)连起来,如ls -l -a与 ls -la 相同。 【参数】提供命令运行的信息,或者是命令执行过程中所使用的文件名。 使用分号(可以将两个命令隔开,这样可以实现一行中输入多个命令。命令的执行顺序和输入的顺序 相同。 命令补全 在送入命令的任何时刻,可以按键,当这样做时,系统将试图补全此时已输入的命令。如果已 经输入的字符串不足以唯一地确定它应该使用的命令,系统将发出警告声。再次按键,系统则会给出可用来补全的字符串清单。使用命令补全功能,可以提高使用长命令或操作较长名字的文件或文件夹的都是非常有意义的。

Linux实验一-shell基本命令的使用

实验一Linux shell基本命令的使用 一、实验目的和要求 a)掌握用户系统常用命令。 b)掌握文件目录常用命令。 c)掌握压缩打包常用命令。 d)掌握网络相关命令。 二、实验内容和原理 a)登录系统,查看系统相关信息; b)查询和更新系统用户数据; c)创建文件目录和文件,并实现文件操作; d)打包并解压文件 e)查询系统网络状态,并设置和更新 三、实验环境 a)硬件:PC机 b)软件:LINUX操作系统、虚拟机 四、算法描述及实验步骤 a)启动系统,打开终端; b)查看系统信息,并将以下查看内容重定向添加到文件systemInfo.txt,最后清屏: 1、查看系统当前所有进程; 2、查看当前系统信息 3、查看硬盘分区情况 4、查看/etc/fstab文件 5、查看系统当前的网络地址 c)系统用户数据: 1、切换到root状态 2、创建用户(姓名拼间首字母加学号后两位,如张飞ZF01),密码是123456 3、进入新用户,并查看默认所在主目录及所有登录系统的用户 d)文件操作: 1、在当前用户的主目录下,创建文件夹Labl 2、进入Lab1文件夹,新建文件welcome.txt,写入“Hello Zhang Fei!”保存退出 3、将b步骤生成的文件SystemInfo.txt,移动到Lab1文件夹,并设置文件权限为:文件所有者可读写,其它为只读; 并查看文件列表,权限是否设置 4、返回到当前用户的主目录 5、将Lab1文件夹打包生成tar.gz文件,并删除原文件夹 五、实验报告要求: 按实验步骤执行,在纸质实验报告上详细描述执行流程(使用命令及操作流程),并在电子版的实验报告上要求另加适当截图描述; a)启动系统,打开终端;或使用putty连接系统(如果未安装ssh,可以使用sudo

ubuntu shell 使用命令大全

ubuntu shell 使用命令大全 前言 下面的命令大都需要在控制台/ 终端/ shell 下输入。 控制台, 终端, 和shell 意味着同样一件事- 一个命令行界面,他可以用来控制系统。 打开一个控制台: 应用程序--> 附件--> 终端 任何一个使用'sudo' 作为前缀的命令都需要拥有管理员(或root) 访问权限。所以你会被提示输入你自己的密码。 安装升级 查看软件xxx安装内容 dpkg -L xxx 查找软件库中的软件 apt-cache search 正则表达式 或 aptitude search 软件包 显示系统安装包的统计信息 apt-cache stats 显示系统全部可用包的名称 apt-cache pkgnames 显示包的信息 apt-cache show k3b 查找文件属于哪个包 apt-file search filename 查看已经安装了哪些包 dpkg -l 查询软件xxx依赖哪些包 apt-cache depends xxx 查询软件xxx被哪些包依赖 apt-cache rdepends xxx 增加一个光盘源 sudo apt-cdrom add 系统升级 sudo apt-get update (这一步更新包列表) sudo apt-get dist-upgrade (这一步安装所有可用更新) 或者 sudo apt-get upgrade (这一步安装应用程序更新,不安装新内核等) 清除所有已删除包的残馀配置文件 dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。 dpkg: --purge needs at least one package name argument Type dpkg --help for help about installing and deinstalling packages [*]; Use `dselect' or `aptitude' for user-friendly package management; Type dpkg -Dhelp for a list of dpkg debug flag values; Type dpkg --force-help for a list of forcing options; Type dpkg-deb --help for help about manipulating *.deb files; Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*]. Options marked [*] produce a lot of output - pipe it through `less' or `more' ! 编译时缺少h文件的自动处理 sudo auto-apt run ./configure 查看安装软件时下载包的临时存放目录

xshell-linux命令

suse linux 常用命令 (1)命令ls——列出文件 ls -la 给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏”文件 ls a* 列出当前目录下以字母a开头的所有文件 ls -l *.doc 给出当前目录下以.doc结尾的所有文件 (2)命令cp——复制文件 cp afile afile.bak 把文件复制为新文件afile.bak cp afile /home/bible/ 把文件afile从当前目录复制到/home/bible/目录下 cp * /tmp 把当前目录下的所有未隐藏文件复制到/tmp/目录下 cp -a docs docs.bak 递归性地把当前目录下的docs目录复制为新目录docs.bak,保持文件属性,并复制所有的文件,包括以句点开头的隐藏文件。为了方便起见,-a选项包含-R 选项 cp -i 在覆盖前询问用户 cp -v 告诉用户正在做什么 (3)命令mv——移动和重命名文件 mv aflie bfile 将afile重命名为bfile mv afile /tmp 把当前目录下的afile移动到/tmp/目录下 (4)命令rm——删除文件和目录 rm afile 删除文件afile rm * 删除当前目录下的所有文件(未隐藏文件)。rm命令不删除目录,除非也指定了-r(递归)参数。 rm -rf domed 删除domed目录以及它所包含的所有内容 rm -i a* 删除当前目录下所有以字母a开头的文件,并且在每次删除时,提示用户进行确认 (5)命令cd——更改目录 cd ~ 切换到主目录 cd /tmp 切换到目录/tmp cd dir切换到当前目录下的dir目录 cd /切换到根目录 cd ..切换到到上一级目录 cd ../..切换到上二级目录 cd ~切换到用户目录,比如是root用户,则切换到/root下 (6)命令mkdir——建立目录 mkdir phots 在当前目录中建立名为photos的目录 mkdir -p this/that/theother 在当前目录下建立指定的嵌套子目录 (7)命令mkdir——删除目录 mkdir 将删除空目录 (8)命令more、less——查看文件内容 more /etc/passwd 查看/etc/passwd的内容 功能:分页显示命令

Linux 操作系统Shell常用命令总结 (linux系统)

Linux 操作系统Shell常用命令总结(linux系统) linux软件开发 1. find find pathnam e -options [-print -exec -ok] 让我们来看看该命令的参数: pathname find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 -print find命令将匹配的文件输出到标准输出。 -exec find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' {} \;,注意{}和\;之间的空格,同时两个{}之间没有空格, 注意一定有分号结尾。 0) -ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行 find . -name "datafile" -ctime -1 -exec ls -l {} \; 找到文件名为datafile*, 同时创建实际为1天之内的文件, 然后显示他们的明细. find . -name "datafile" -ctime -1 -exec rm -f {} \; 找到文件名为datafile*, 同时创建实际为1天之内的文件, 然后删除他们. find . -name "datafile" -ctime -1 -ok ls -l {} \; 这两个例子和上面的唯一区别就是-ok会在每个文件被执行命令时提示用户, 更加安全. find . -name "datafile" -ctime -1 -ok rm -f {} \; 1) find . -name 基于文件名查找,但是文件名的大小写敏感. find . -name "datafile*" 2) find . -iname 基于文件名查找,但是文件名的大小写不敏感. find . -iname "datafile*"

Linux Shell常用命令总结

1. find find pathname -options [-print -exec -ok] 让我们来看看该命令的参数: pathname find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 -print find命令将匹配的文件输出到标准输出。 -exec find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' {} \;,注意{}和\;之间的空格,同时两个{}之间没有空格, 注意一定有分号结尾。 0) -ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行 find . -name "datafile" -ctime -1 -exec ls -l {} \; 找到文件名为datafile*, 同时创建实际为1天之内的文件, 然后显示他们的明细. find . -name "datafile" -ctime -1 -exec rm -f {} \; 找到文件名为datafile*, 同时创建实际 为1天之内的文件, 然后删除他们. find . -name "datafile" -ctime -1 -ok ls -l {} \; 这两个例子和上面的唯一区别就是-ok会在每个文件被执行命令时提示用户, 更加安全. find . -name "datafile" -ctime -1 -ok rm -f {} \; 1) find . -name 基于文件名查找,但是文件名的大小写敏感. find . -name "datafile*" 2) find . -iname 基于文件名查找,但是文件名的大小写不敏感. find . -iname "datafile*" 3) find . -maxdepth 2 -name fred 找出文件名为fred,其中find搜索的目录深度为2(距当前目录), 其中当前目录被视为第一层. 4) find . -perm 644 -maxdepth 3 -name "datafile*" (表示权限为644的, 搜索的目录深度为3, 名字为datafile*的文件) 5) find . -path "./rw" -prune -o -name "datafile*" 列出所有不在./rw及其子目录下文件名为datafile*的文件。 find . -path "./dir*" 列出所有符合dir*的目录及其目录的文件. find . \( -path "./d1" -o -path "./d2" \) -prune -o -name "datafile*" 列出所有不在./d1和d2及其子目录下文件名为datafile*的文件。 6) find . -user ydev 找出所有属主用户为ydev的文件。 find . ! -user ydev 找出所有属主用户不为ydev的文件,注意!和-user之间的空格。 7) find . -nouser 找出所有没有属主用户的文件,换句话就是,主用户可能已经被删除。 8) find . -group ydev 找出所有属主用户组为ydev的文件。

Linux下最常用的Shell命令的介绍

有些人仍然会有这种愚蠢的想法,他们认为使用Linux就必须使用Linux shell命令。胡说!你可以不懂得任何Linux命令,比如说ps,grep,ls等,但是你仍然可以使用很多现代的Linux桌面发行版。 Linux的系统管理员与桌面用户不一样,他们不像桌面用户一样使用Cinnamon,GNOME,Unity,或者KDE,他们所有的时间都是用Linux命令。 对于桌面用户来讲,若是了解一部分Linux命令,你可以更好的使用Linux,体验它的魅力,下面列举出了一些: Shell基础: 你可以通过打开Linux的terminal(终端)来执行Shell命令。Shell的种类有很多种,例如CSH,Bourne Shell,Korn Shell。在现在的大多数Linux发行版中,默认的Shell一般都是Bourne again shell(bash)。 想看看你的Shell是哪一种,执行下面的命令 echo $SHELL 在Linux中,$符号代表一个shell变量。所有的shell都用这种方式使用变量。有一些shell 变量在你的系统启动的时候就有了默认值。例如,$SHELL;$LOGNAME是你的登录名,而$PATH变量指明了你的shell命令的搜索范围。 echo命令的作用就是打印出你的输入。如果你的输入具有shell的特殊意义,例如shell变量,他就输出变量的值。 一个重要的地方是,你要注意文本的大小写。例如,ls,是DOS的dir命令的Linux版本。这个命令列出当前工作目录下的文件列表。如果你输入的是LS,你得到的只能是“找不到命令”的错误信息。 另外在Linux shell命令中一个重要的地方是,你可以将命令串起来。这是Unix/Linux从第一天开始就有的巧妙的特点。最简单的将命令连起来的办法就是使用“|”,我们称之为“pipe”。第一个命令的输出就是下一个命令的输入。 Linux命令有自己的语法规则: 基本的语法就像这样: command -option file 例如:

PowerShell基本语法及常用命令

PowerShell基本语法及常用命令 Powershell常用命令 1.Get-Command 得到Powshell所有命令 2.Get-Process 获取所有进程 3.Set-Alias 给指定命令重命名如:Set-Alias aaa Get-Command 4.Set-ExecutionPolicy remotesigned 设置powershell可直接执行脚本文件一般脚本文件以.ps1结尾执行脚本文件直接输入文件地址即可执行脚本文件中只写命令即可 5.Get-Help get-* 查询以get开头的命令Get-Help *service* Get-Help Get-Command 获取Get-Command命令的基本用法 6.Get-Member 获取对象属性如: $var | Get-Memeber 访问$var属性直接$var.T oString() PS中的变量定义 不需要定义或声明数据类型 在变量前加"$" 定义变量的规则 -变量可以是数字$123 -变量可以是字符串$abc -变量可以是特殊字符${@1b} 内置的变量 -$pshome -$home

-$profile 变量赋值: $var=123 $var="aaaaaa" 取变量值: $var 变量赋值方法:Set-Variable var 100 取值方法: Get-Variable var 清空值: Clear-Variable var 删除变量Remove-Variable var 取多个变量如var1 var2 var3地值: Get-Variable var* 另一种赋值方法$var1="bbb" $var2="$var $var1" 结果$var2="aaaaaa bbb" $var2='$var $var1' 结果$var2="$var $var1" $date=Get-Date 获取当前时间 $date.AddDays(3) 当前时间加3天 排序用法 Get-Process | Sort-Object ws 根据WS值由小到大排序 Get-Process | Sort-Object | fl Get-Process | Sort-Object | Format-List 以列表形式显示数据 导入导出文件 Get-Process > c:\aa.txt

shell常用命令大全

一、文件目录类命令 1、查看联机帮助信息 man命令如:#man ls info命令如:#info cd 2、列出当前目录或指定目录的文件名和目录名 ls[选项]文件或目录 常用[选项]如下: -a:显示所有的文件,包括以“.”开头的隐含文件。 -l:长格式输出 -m:宽行输出 -F:以各种符号表示不同的文件类型 --color:彩色输出 -R:递归输出 3、touch 功能:修改文件的创建日期或以当前系统日期创建一个空文件。 -d:修改文件的日期。 #touch–d2*******test.txt 4、cp 功能:复制文件 用法:cp[选项]源文件或目录目标文件或目录 选项: a:该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地

拷贝目录,其作用等于dpR选项的组合。 -d拷贝时保留链接。 -f删除已经存在的目标文件而不提示。 -i和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。 -p此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。 -r若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。 5、mv 功能:给文件或目录改名或将一个文件或目录移到另一个目录 用法:mv[选项]源文件或目录目标文件或目录 -i交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。-f禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选项后,i选项将不再起作用。 6、rm 功能:删除文件或目录 用法:rm[选项]文件… -f强制删除 -r指示rm将参数中列出的全部目录和子目录均递归地删除。 -i进行交互式删除

shell常用命令

目录 一、目录操作 a) ls--查看文件/目录: 常用:ls –l 查看详细文件列表 b) pwd--查看当前目录: c) cd--改变工作目录: 常用①:cd ../ 跳转到上一级目录 常用②:cd /boot/ 跳转到指定目录 d) mkdir--创建目录: 常用:mkdir 123 创建一个空文件夹 e) rm--删除文件/目录: 常用: rm -rf 123 删除目录文件夹,并且目录下的文件一并删除。 f) mv--移动文件/目录改名、移动: 移动文件: mv 1.sh ./123 → mv 目标文件移动至某目录 重名命文件:mv 1.sh 123.sh → mv 原文件欲改后文件 g) ln--建立软连接和硬连接: 软连接:ln -s 123.sh ../ → ln -s 源文件欲放置路径 硬连接:ln 123.sh ../ → ln 源文件欲放置路径 h) rmdir--删除空目录: 二、文件操作 a)cat--查看文件内容,若文件不存在,创建对应文件: 常用:cat 1.txt b)cp--拷贝文件、目录: 备份:cp 123.sh 1.sh → cp 源文件目标文件 复制至某路径:cp 123.sh ../ → cp 源文件目标路径 c)chmod--修改文件权限: 常用:chmod 777 1.sh 给1.sh最高权限 一般模式:chmod +rw 1.sh 仅当前用户下1.sh具有可读写权限 d)touch--创建文件: 常用:touch ./1.sh → touch 路径+名称 f)vim--创建并打开文件: 常用:vim ./1.sh → vim 路径+名称 g)find--在指定目录查找符合条件的文件: 以[文件名+类型]寻找:find ./ -name “*.*”→ find 路径 -nama

shell常用命令详解及基本操作

Linux网络嵌入架构工程师培训班第二课 1、介绍: 文件系统和磁盘分区是Linux操作系统下非常重要的概念,文件系统是所有文件和文件夹的基础,是用户创建文件的基本的要求,磁盘是文件系统的基础,文件系统是逻辑概念,磁盘是物理概念,文件系统以磁盘为基础存储文件。 2、内容: 介绍Linux文件系统管理的基本概念。Linux可支持的文件系统有很多,其默认的文件系统为ext3。讲解Linux下文件系统的挂载mount操作,如何有效地在双操作系统下挂载Windows下分区,如何挂载光盘,移动U盘等外部设置。 Minix(只可以使用64MB的硬盘分区) Linux最早的操作系统。 Cat /etc/fstab iocharset=gb2312 rw dump ext 文件系统: ext是第一个专门为Linux使用的文件系统类型,称为扩展文件系统。它在1992年4月完成,对Linux的发展起到了重要作用。但是其在性能和兼容上存在许多缺陷,现在已经很少用了。 ext2 文件系统: ext2文件系统应该说是Linux正宗的文件系统,早期的Linux都是用ext2,但随着技术的发展,大多Linux的发行版本目前并不用这个文件系统了;比如Redhat和Fedora 大多都建议用ext3 ,ext3文件系统是由ext2发展而来的。对于Linux新手,我们还是建议您不要用ext2文件系统;ext2支持undelete(反删除),如果您误删除文件,有时是可以恢复的,但操作上比较麻烦;ext2支持大文件;ext2文件系统的官方主页是:https://www.docsj.com/doc/0611969658.html,/ext2.html ext3 文件系统: 是由ext2文件系统发展而来; ext3 is a Journalizing file system for Linux(ext3是一个用于Linux的日志文件系统),ext3支持大文件;但不支持反删除(undelete)操作;Redhat和Fedora都力挺ext3;至于ext3文件系统的更多特性,请访问《Linux 文件系统(filesystem)资源索引》; jsf 文件系统: jsf提供了基于日志的字节级文件系统,该文件系统是为了面向事务的高性能系统而开发的。在AIX上,jsf已经受住了考验。它是可靠,快速和容易使用的。2000年2月,IBM公司宣布在一个开放资源许可证下,移植Linux版的jsf文件,jsf 也是一个有大量用户安装使用的企业级文件系统,它具有可伸缩性和健壮性,与非日志文件系统相比,它的优点是其快速的重启能力。Jsf能够在几秒或几分钟内就把文件系统恢复到一致状态,虽然jsf主要为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求设计的,但是jsf还可用于想得到高性能和可靠性的客户机的配置,因为在系统崩溃时,jsf能提供快速的文件系统重启时间,所以它是因特网文件服务器的关键技术。使用数据库日志处理技术,

powershell命令

Get-Command Cmdlet 获取有关cmdlet 的基本信息,以及有关Powershell Get-Help Cmdlet 显示有关Windows PowerShell cmdlet 和概-念的信息。 Get-History Cmdlet 获取在当前会话中输入的命令的列表。 Invoke-History Cmdlet 从会话历史记录中运行命令。 Add-History Cmdlet 向会话历史记录追加条目。 ForEach-Object Cmdlet 针对每一组输入对象执行操作。 Where-Object Cmdlet 创建控制哪些对象沿着命令管道传递的筛选器。 Set-PSDebug Cmdlet 打开和关闭脚本调试功能,设置跟踪级别并切换strict 模式。 Add-PSSnapin Cmdlet 将一个或多个Windows PowerShell 管理单元添加到当 前控制台。 Remove-PSSnapin Cmdlet 从当前控制台中删除Windows PowerShell 管理单元。 Get-PSSnapin Cmdlet 获取计算机上的Windows PowerShell 管理单元。 Export-Console Cmdlet 将当前控制台的配置导出到文件中,以便对其进行重用或共享。 Start-Transcript Cmdlet 在文本文件中创建全部或部分Windows PowerShell 会话的记录。 Stop-Transcript Cmdlet 停止脚本。 Add-Content Cmdlet 向指定项中添加内容。 Clear-Content Cmdlet 删除项的内容(例如从文件中删除文本),但不删除该项。 Clear-ItemProperty Cmdlet 删除属性的值,但不删除该属性。 Join-Path Cmdlet 将路径和子路径合并到单个路径中。提供程序将提供路径分隔符。 Convert-Path Cmdlet 将路径从Windows PowerShell 路径转换为Window Copy-ItemProperty Cmdlet 将属性和值从指定的位置复制到另一个位置。 Get-EventLog Cmdlet 获取与本地事件日志或其中存储的条目有关的信息。

shell命令的使用

Shell命令的使用 Table of contents 目录 T ABLE OF CONTENTS 目录 (1) 1SHELL简介 (2) 2SHELL的使用 (2) 2.1帮助命令 (2) 2.2系统基本信息获取命令 (7) 2.2.1版本命令 (7) 2.2.2Show命令 (8) 2.3常用检测命令 (8) 2.3.1端口类 (8) 2.3.2收发包类 (10) 2.3.3程序调试类 (12) 2.4检测芯片的命令 (12) 2.4.1寄存器的访问 (12) 2.4.2内存的访问 (16) 2.4.3中断等其他命令 (20) 2.5高级配置命令 (21) 2.5.1Vlan管理命令 (21) 2.5.2L2 命令 (22) 2.5.3L3命令 (23) 2.5.4Mirroring命令 (25) 2.5.5Filtering (25) 2.5.6Spanning Tree Group Management (25) 2.6错误检测命令 (25) 2.6.1Text (25) 2.6.2CONFig (26) 3REFERENCE DOCUMENTS 参考文献 (26)

1 shell简介 shell即BCM Diagnostic Shell是一个普通的命令行解释器(CLI),它可以提供对嵌入了BCM交换芯片的嵌入式平台的一种精确控制作用。shell支持所有Broadcom交换芯片,并提供了对所有寄存器,内存和最高层API的直接访问功能。此外,由于shell支持交互和非交互两种模式,所以它可以嵌入到客户的设计中,以提供额外诊断服务。 Shell命令可被分为六大类: 1.帮助命令:??,?,help 2.系统基本信息获取命令:Version,show 3.常用检测命令:端口类:PORT,COMBO 收发包类:TX, PacketWatcher 程序调试类:Debug,DebugMod 4.检测芯片的命令:寄存器的访问:Getreg,EditReg 等 内存访问:Dump, Write 等 中断管理:INTR 5.高级配置命令:VLAN, L2, L3 等 6.错误检测命令:Test ,CONFig,等 2 Shell的使用 以DCN DS45XX项目为例来说明shell的使用。 2.1 帮助命令 BCM.0> help //输入help命令得到shell中所有可用的命令共201条 Help: Type help "command" for detailed command usage Help: Upper case letters signify minimal match Commands common to all modes: ? Display list of commands ASSert Assert BackGround Execute a command in the background. BCM Set shell mode to BCM. BCMX Set shell mode to BCMX. break place to hang a breakpoint CASE Execute command based on string match CD Change current working directory cint Enter the C interpreter CONFig Configure Management interface CONSole Control console options CoPy Copy a file CPUDB Update the CPU database CTEcho Send an echo request using CPUTRANS

PT基本命令

PrimeTime基本命令 一、R un Prime Time 1.module add synnew 2.primetime & 启动图形界面 3.pt_shell –f RUN.tcl | tee –I run.log 用命令行启动脚本 二.一些命令的叙述 1.Setup time : data required time – data arrival time 2.Hold time : data arrival time – data required time 3.Report_analysis_coverage :看一下所有错误的基本情况 -status violated -check “setup hold” -sort_by slack -sort_by check_type 4.Report_timing :显示the worst slack for setup time 5.Report_timing –delay max :看setup time 6.Report_timing –delay min :看hold time 7.Pt_shell –x “restore_session orca_savesession” :继续原来保存的信息 8.Set sh_enable_page_mode true : 分页显示 9.Report_lib libname :看库的信息 10. Report_timing –group SYS_clk :看某个时钟的信息 11. Pre CTS clock Uncertainty = clock skew + clock jitter +margin Post CTS clock Uncertainty = clock jitter + margin还要加上 Set_propagated_clock [all_clocks] 12. Report_timing –path full_clock :可以显示clock的详细信息 13. Report_timing –from E, Report_timing –to Z, Report_timing –from G –to FF4/D :显示详细路径的信息 14. Report_port –input_delay –output_delay inoutpad, Report_port –input_delay inputpad Report_port –ouput_delay outputpad: 看port的信息 15. Report_timing –input_pins :可以看到net的delay 16. Report_lib –timing_arcs libname cellname:看库单元的时序信息 17. Report_cell –connections –verbose Instance_name :看单元的信息 28. Report_timing –max_paths 2 –nworst 2 :可以看两条path的两个最坏的timing, default为1。 29. Report_timing –slack_lesser_than -slack_greater_than -to –rise_to –fall_to -from –rise_from –fall_from -through –rise_through –fall_through -exclude –rise_exclude –fall_exclude

最常用的Shell命令

1 / 12 Shell命令行操作 Linux shell 简介 Linux shell指的是一种程序,有了它,用户就能通过键盘输入指令来操作计算机了。Shell会执行用户输入的命令,并且在显示器上显示执行结果。这种交互的全过程都是基于文本的,与其他各章介绍的图形化操作不同。这种面向命令行的用户界面被称为CLI(Command Line interface)。在图形化用户界面(GUI)出现之前,人们一直是通过命令行界面来操作计算机的。 现在,基于图形界面的工具越来越多,许多工作都不必使用Shell 就可以完成了。然而,专业的Linux用户认为Shell是一个非常有用的工具,学习Linux时一定要学习Shell,至少要掌握一些基础知识和基本的命令 启动shell 在启动Linux桌面系统后,Shell已经在后台运行起来了,但并没有显示出来。如果想让它显示出来, 按如下的组合键就可以: + + 组合键中的F2可以替换为 F3、F 4、F 5、F6。 如果要回到图形界面,则按如下组合键: + + 另外,在图形桌面环境下运行“系统终端”也可以执行Shell命

令,与用组合键切换出来的命令行界面 2 / 12 是等效的。“系统终端”启动后是一个命令行操作窗口,可以随时放大缩小,随时关闭,比较方便,推荐使用。启动“系统终端”的方法是: 【开始】→【应用程序】→【附件】→【系统终端】 该软件允许建立多个Shell客户端,它们相互独立,可以通过标签 在彼此之间进行切换。 Shell命令基本规则 一般格式 Shell命令的一般格式如下: 命令名【选项】【参数1】【参数2】... 【选项】是对命令的特别定义,以减号(-)开始,多个选项可以用一个减号(-)连起来,如ls -l -a与 ls -la 相同。 【参数】提供命令运行的信息,或者是命令执行过程中所使用的文件名。 使用分号(可以将两个命令隔开,这样可以实现一行中输入多个命令。命令的执行顺序和输入的顺序 相同。

相关文档