您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 第2章 Linux基础命令
华清远见——嵌入式培训专家应用开发班培训教材“黑色经典”系列之《嵌入式Linux应用程序开发详解》第2章Linux基础命令本章目标Linux是个高可靠、高性能的系统,而所有这些优越性只有在直接使用Linux命令行(Shell环境)才能充分地体现出来。在本章将帮助读者学会如下内容。掌握Shell基本概念熟练使用Linux中用户管理命令熟练使用Linux中系统相关命令熟练使用Linux中文件目录相关命令熟练使用Linux中打包压缩相关命令熟练使用Linux中文件比较合并相关命令熟练使用Linux中网络相关命令了解Linux的启动过程深入了解INIT进程及其配置文件能够独立完成在Linux中解压软件学会添加环境变量能够独立定制Linux中系统服务华清远见——嵌入式培训专家再次启动之后,就可以进入到与Windows类似的图形化界面了。这个界面就是Linux图形化界面X窗口系统(简称X)的一部分。要注意的是,X窗口系统仅仅是Linux上面的一个软件(或者也可称为服务),它不是Linux自身的一部分。虽然现在的X窗口系统已经与Linux整合地相当好了,但毕竟还不能保证绝对的可靠性。另外,X窗口系统是一个相当耗费系统资源的软件,它会大大地降低Linux的系统性能。因此,若是希望更好地享受Linux所带来的高效及高稳定性,建议读者尽可能地使用Linux的命令行界面,也就是Shell环境。当用户在命令行下工作时,不是直接同操作系统内核交互信息的,而是由命令解释器接受命令,分析后再传给相关的程序。Shell是一种Linux中的命令行解释程序,就如同Command.com是DOS下的命令解释程序一样,为用户提供使用操作系统的接口。它们之间的关系如图2.1所示。用户在提示符下输入的命令都由Shell先解释然后传给Linux内核。小知识•Shell是命令语言、命令解释程序及程序设计语言的统称。它不仅拥有自己内建的Shell命令集,同时也能被系统中其他应用程序所调用。•Shell的另一个重要特性是它自身就是一个解释型的程序设计语言,Shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。Shell编程语言简单易学,任何在提示符中能键入的命令都能放到一个可执行的Shell程序中。关于Shell编程的详细讲解,感兴趣的读者可以参见其他相关书籍。Linux中运行Shell的环境是“系统工具”下的“终端”,读者可以单击“终端”以启动Shell环境。这时屏幕上显示类似“[sunq@]$”的信息,其中,sunq是指系统用户,而home是指当前所在的目录。由于Linux中的命令非常多,要全部介绍几乎不可能。因此,在本书中按照命令的用途进行分类讲解,并且对每一类中最常用的命令详细讲解,同时列出同一类中的其他命令。由于同一类的命令都有很大的相似性,因此,读者通过学习本书中所列命令,可以很快地掌握其他命令。命令格式说明。•格式中带[]的表明为可选项,其他为必选项。•选项可以多个连带写入。•本章后面选项参数列表中加粗的含义是:该选项是非常常用的选项。2.1.1用户系统相关命令Linux是一个多用户的操作系统,每个用户又可以属于不同的用户组,下面,首先来熟悉一下Linux中的用户切换和用户管理的相关命令。图2.1内核、Shell和用户的关系《嵌入式Linux应用程序开发详解》——第2章、Linux基础命令华清远见嵌入式Linux应用开发班培训教材1.用户切换(su)(1)作用变更为其它使用者的身份,主要用于将普通用户身份转变为超级用户,而且需输入相应用户密码。(2)格式su[选项][使用者]其中的使用者为要变更的对应使用者。(3)常见参数主要选项参数见表2.1所示。表2.1su命令常见参数列表选项参数含义-,-l,--login为该使用者重新登录,大部分环境变量(如HOME、SHELL和USER等)和工作目录都是以该使用者(USER)为主。若没有指定USER,缺省情况是root-m,-p执行su时不改变环境变量-c,--command变更账号为USER的使用者,并执行指令(command)后再变回原来使用者(4)使用示例[sunq@]$su-rootPassword:[root@]#示例通过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”和“suroot”的区别。2.用户管理(useradd和passwd)Linux中常见用户管理命令如表2.2所示,本书仅以useradd和passwd为例进行详细讲解,其他命令类似,请读者自行学习使用。表2.2Linux常见用户管理命令命令命令含义格式useradd添加用户账号useradd[选项]用户名usermod设置用户账号属性usermod[选项]属性值userdel删除对应用户账号userdel[选项]用户名groupadd添加组账号groupadd[选项]组账号groupmod设置组账号属性groupmod[选项]属性值groupdel删除对应组账号groupdel[选项]组账号passwd设置账号密码passwd[对应账号]id显示用户ID、组ID和用户所属的组列表id[用户名]groups显示用户所属的组groups[组账号]who显示登录到系统的所有用户who(1)作用①useradd:添加用户账号。②passwd:更改对应用户账号密码。(2)格式①useradd:useradd[选项]用户名。②passwd:passwd[选项][用户名]。其中的用户名为修改账号密码的用户,若不带用户名,缺省为更改当前使用者账号密码。(3)常用参数①useradd主要选项参数见表2.3所示。表2.3useradd命令常见参数列表《嵌入式Linux应用程序开发详解》——第2章、Linux基础命令华清远见嵌入式Linux应用开发班培训教材选项参数含义-g指定用户所属的群组-m自动建立用户的登入目录-n取消建立以用户名称为名的群组②passwd:一般很少使用选项参数。(4)使用实例[root@]#useraddyul[root@]#passwdyulNewpassword:Retypenewpassword:passwd:allauthenticationtokensupdatedsuccessfully[root@]#su-yul[yul@]$[yul@]$pwd(查看当前目录)/home/yul实例中先添加了用户名为yul的用户,接着又为该用户设置了账号密码。并从su的命令可以看出,该用户添加成功,其工作目录为”/home/yul”。(5)使用说明•在使用添加用户时,这两个命令是一起使用的,其中,useradd必须用root的权限。而且useradd指令所建立的账号,实际上是保存在“/etc/passwd”文本文件中,文件中每一行包含一个账号信息。•在缺省情况下,useradd所做的初始化操作包括在“/home”目录下为对应账号建立一个名为同名的主目录,并且还为该用户单独建立一个与用户名同名的组。•adduser只是useradd的符号链接(关于符号链接的概念在本节后面会有介绍),两者是相同的。•passwd还可用于普通用户修改账号密码,Linux并不采用类似windows的密码回显(显示为*号),所以输入的这些字符用户是看不见的。密码最好包括字母、数字和特殊符号,并且设成6位以上。3.系统管理命令(ps和kill)Linux中常见的系统管理命令如表2.4所示,本书以ps和kill为例进行讲解。表2.4Linux常见系统管理命令命令命令含义格式ps显示当前系统中由该用户运行的进程列表ps[选项]top动态显示系统中运行的程序(一般为每隔5s)topkill输出特定的信号给指定PID(进程号)的进程kill[选项]进程号(PID)华清远见——嵌入式培训专家显示系统的信息(可加选项-a)uname[选项]setup系统图形化界面配置setupcrontab循环执行例行性命令crontab[选项]shutdown关闭或重启Linux系统shutdown[选项][时间]uptime显示系统已经运行了多长时间uptimeclear清除屏幕上的信息clear(1)作用①ps:显示当前系统中由该用户运行的进程列表。②kill:输出特定的信号给指定PID(进程号)的进程,并根据该信号而完成指定的行为。其中可能的信号有进程挂起、进程等待、进程终止等。(2)格式①ps:ps[选项]。②kill:kill[选项]进程号(PID)。kill命令中的进程号为信号输出的指定进程的进程号,当选项是缺省时为输出终止信号给该进程。(3)常见参数①ps主要选项参数见表2.5所示。表2.5ps命令常见参数列表选项参数含义-ef查看所有进程及其PID(进程号)、系统时间、命令详细目录、执行者等-aux除可显示-ef所有内容外,还可显示CPU及内存占用率、进程状态-w显示加宽并且可以显示较多的信息②kill主要选项参数见表2.6所示。表2.6kill命令常见参数列表选项参数含义-s根据指定信号发送给进程-p打印出进程号(PID),但并不送出信号-l列出所有可用的信号名称(4)使用实例[root@]#ps–efUIDPIDPPIDCSTIMETTYTIMECMDroot1002005?00:00:05initroot2102005?00:00:00[keventd]root3002005?00:00:00[ksoftirqd_CPU0]《嵌入式Linux应用程序开发详解》——第2章、Linux基础命令华清远见嵌入式Linux应用开发班培训教材root4002005?00:00:00[ksoftirqd_CPU1]root7421102005?00:00:00/usr/local/bin/ntpd-c/etc/ntp.root2178721739017:16pts/100:00:
本文标题:第2章 Linux基础命令
链接地址:https://www.777doc.com/doc-4484437 .html