第2 章 linux 基础命令。
linux是个高可靠、高性能的系统,而所有这些优越性只有在直接使用linux命令行(shell
环境)才能充分地体现出来。在本章将帮助读者学会如下内容。
1. 掌握shell基本概念。
2. 熟练使用linux 中用户管理命令。
3. 熟练使用linux 中系统相关命令。
4. 熟练使用linux中文件目录相关命令。
5. 熟练使用linux中打包压缩相关命令。
6. 熟练使用linux 中文件比较合并相关命令。
7. 熟练使用linux 中网络相关命令。
8. 了解linux 的启动过程。
9. 深入了解init进程及其配置文件。
10. 能够独立完成在linux 中解压软件。
11. 学会添加环境变量。
12. 能够独立定制linux 中系统服务。
在安装完linux再次启动之后,就可以进入到与windows类似的图形化界面了。这个界面就是linux图形化界面x窗口系统(简称x)的一部分。要注意的是,x窗口系统仅仅是linux上面的一个软件(或者也可称为服务),它不是linux 自身的一部分。
虽然现在的x 窗口系统已经与linux整合地相当好了,但毕竟还不能保证绝对的可靠性。另外,x窗口系统是一个相当耗费系统资源的软件,它会大大地降低linux的系统性能。因此,若是希望更好地享受linux所带来的高效及高稳定性,建议读者尽可能地使用linux 的命令行界面,也就是shell环境。
当用户在命令行下工作时,不是直接同操作系统内核交互信息的,而是由命令解释器接受命令,分析后再传给相关的程序。shell 是一种linux 中的命令行解释程序,就如同 是dos 下的命令解释程序一样,为用户提供使用操作系统的接口。它们之间的关系如图2.
1 所示。用户在提示符下输入的命令都由shell先解释然后传给linux 内核。
小知识: shell 是命令语言、命令解释程序及程序设计语言的统称。它不仅拥有自己内建的shell 命令集,同时也能被系统中其他应用程序所调用。
shell 的另一个重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。shell 编程语言简单易学,任何在提示符中能键入的命令都能放到一个可执行的shell程序中。关于shell编程的详细讲解,感兴趣的读者可以参见其他相关书籍。
linux 中运行shell 的环境是“系统工具”下的“终端”,读者可以单击“终端”以启动shell
环境。这时屏幕上显示类似“[sunq@www home]$”的信息,其中,sunq 是指系统用户,而home是指当前所在的目录。
由于linux 中的命令非常多,要全部介绍几乎不可能。因此,在本书中按照命令的用途进行分类讲解,并且对每一类中最常用的命令详细讲解,同时列出同一类中的其他命令。由于同一类的命令都有很大的相似性,因此,读者通过学习本书中所列命令,可以很快地掌握其他命令。
图2.1 内核、shell和用户的关系。
命令格式说明。
格式中带的表明为可选项,其他为必选项。
选项可以多个连带写入。
本章后面选项参数列表中加粗的含义是:该选项是非常常用的选项。
2.1.1 用户系统相关命令。
linux 是一个多用户的操作系统,每个用户又可以属于不同的用户组,下面,首先来熟悉一下linux 中的用户切换和用户管理的相关命令。
1.用户切换(su)
1)作用。变更为其它使用者的身份,主要用于将普通用户身份转变为超级用户,而且需输入相应。
用户密码。2)格式。
su [选项] [使用者]
其中的使用者为要变更的对应使用者。
3)常见参数。
主要选项参数见表2.1 所示。
4)使用示例。
示例通过su命令将普通用户变更为root 用户,并使用选项“-”携带root环境变量。
5)使用说明。
在将普通用户变更为root 用户时建议使用”-”选项,这样可以将root的环境变量和。
工作目录同时带入,否则在以后的使用中可能会由于环境变量的原因而出错。
在转变为root权限后,提示符变为#
小知识。环境变量实际上就是用户运行环境的参数集合。linux是一个多用户的操作系统。而且在每个。
用户登录系统后,都会有一个专有的运行环境。通常每个用户默认的环境都是相同的,而这。
个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法。
就是修改相应的系统环境变量。
常见的环境变量如下。
path是系统路径。
home是系统根目录。
histsize是指保存历史命令记录的条数。
logname是指当前用户的登录名。
hostname是指主机的名称,若应用程序要用到主机名的话,通常是从这个环境变量中来。
取得的。shell是指当前用户用的是哪种shell。
lang/languge是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。
mail是指当前用户的邮件存放目录。
设置环境变量方法如下。
通过etho显示字符串(指定环境变量)。
通过export设置新的环境变量。
通过env显示所有环境变量。
通过set 命令显示所有本地定义的shell变量。
通过unset命令来清除环境变量。
读者可以试着用“env”命令查看“su - root”和“su root”的区别。
2.用户管理(useradd和passwd)
linux中常见用户管理命令如表2.2所示,本书仅以useradd和passwd为例进行详细讲解,其他命令类似,请读者自行学习使用。
表2.2 linux常见用户管理命令。
1)作用。 useradd:添加用户账号。
passwd:更改对应用户账号密码。
2)格式。 useradd:useradd [选项] 用户名。
passwd:passwd [选项] [用户名]。
其中的用户名为修改账号密码的用户,若不带用户名,缺省为更改当前使用者账号密码。
3)常用参数。
useradd主要选项参数见表2.3 所示。
表2.3 useradd命令常见参数列表。
passwd:一般很少使用选项参数。
4)使用实例。
实例中先添加了用户名为shidianfa的用户,接着又为该用户设置了账号密码。并从su的命令可以看出,该用户添加成功,其工作目录为”/home/shidianfa”。
5)使用说明。
在使用添加用户时,这两个命令是一起使用的,其中,useradd 必须用root 的权限。
而且useradd指令所建立的账号,实际上是保存在“/etc/passwd”文本文件中,文件中每一行。
包含一个账号信息。
在缺省情况下,useradd所做的初始化操作包括在“/home”目录下为对应账号建立一。
个名为同名的主目录,并且还为该用户单独建立一个与用户名同名的组。
adduser 只是useradd 的符号链接(关于符号链接的概念在本节后面会有介绍),两者。
是相同的。passwd还可用于普通用户修改账号密码,linux并不采用类似windows的密码回显(显。
示为*号),所以输入的这些字符用户是看不见的。密码最好包括字母、数字和特殊符号,并。
且设成6 位以上。
3.系统管理命令(ps 和kill)
linux 中常见的系统管理命令如表2.4 所示,本书以ps 和kill为例进行讲解。
表2.4linux常见系统管理命令。
1)作用。 ps:显示当前系统中由该用户运行的进程列表。
kill:输出特定的信号给指定pid(进程号)的进程,并根据该信号而完成指定的行。
为。其中可能的信号有进程挂起、进程等待、进程终止等。
2)格式。 ps:ps [选项]。
kill:kill [选项] 进程号(pid)。
kill 命令中的进程号为信号输出的指定进程的进程号,当选项是缺省时为输出终止信号。
给该进程。3)常见参数。
ps 主要选项参数见表2.5 所示。
表2.5 ps 命令常见参数列表。
kill主要选项参数见表2.6 所示。
表2.6kill命令常见参数列表。
4)使用实例。
该实例中首先查看所有进程,并终止进程号为7053的ntp进程,之后再次查看时已经没。
有该进程号的进程。
5)使用说明。
ps在使用中通常可以与其他一些命令结合起来使用,主要作用是提高效率。
ps 选项中的参数w 可以写多次,通常最多写3 次,它的含义表示加宽3 次,这足以。
显示很长的命令行了。例如:ps –auxwww。
小知识。管道是linux中信息通信的重要方式。它是把一个程序的输出直接连接到另一个程序的输入,而不经过任何中间文件。
管道线是指连接二个或更多程序管道的通路。在shell中字符”|”表。
示管道线。如前例子中的ps –ef|grep ntp所示,ps –ef的结果直接输入到grep ntp的程序中(关。
于grep命令在后面会有详细的介绍)。grep、pr、sort和wc都可以在上述管道线上工作。读者。
ARM嵌入式系统教程第二章课后习题
2.1 arm体系结构的特征有哪些?2 在load store结构中,处理器只处理在寄存器中的数据,而不直接处理存储器中的数据 3 简单的寻址模式 4 采用固定长度的指令格式,简化指令解码 5 采用流水线技术。因为arm内核不是一个纯粹的risc体系结构,因此arm指令集和单纯的risc定义有以下几...
嵌入式ARM嵌入式系统设计
摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...
嵌入式系统
期末作业考核。满分100分。一 判断题 每题3分,共30分 1.嵌入式系统中的软件系统主要由嵌入式操作系统和应用软件组成,其中嵌入式微处理器属于嵌入式软件系统的核心。答 错。2.运行在智能手机或平板电脑中的android系统是一种嵌入式操作系统。答 对。3.windriver公司所提供的软件开发包是...