03_Linux基础之命令规范
回顾:
开源协定:
GPL,LGPL,BSD,Apache
BSD要求:
1、如果二次发布的产品中包含源代码,则在源代码中必须带有原来的代码中的BSD协定中;
2、如果二次发布产品是二进制格式的库或程序,则需要在发布的文档或版本声明中说明包含原来的代码中的BSD协定;
3、不可以用开源代码的作者或组织,以及原来的产品的名字做市场推广;
代码的共产的主义运动:
文件系统、文件、目录:
倒置树状结构:
目录:
文件:
文件名:严格区分字符大小写;路径分隔符/;
路径:
绝对路径:
相对路径:
程序的组成部分:二进制程序文件、库文件、配置文件、帮助文件;
二进制、库文件:可执行文件
库文件:不能独立执行,只能被调用时执行
配置文件、帮助文件:可被查看其内容的文件;
推荐书籍<穿越计算机的迷雾>、<量子物理史话>
人机交互界面:
GUI
CLI
[login@hostname workdir]# COMMAND
Linux基础知识:
命令的语法通用格式:
# COMMAND OPTIONS ARGUMENTS(参数)
发起一命令:请求内核将某个二进制程序运行为一个进程;
程序 —> 进程
静态 —> 动态(有生命周期)
命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件;
多数系统程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin
普通命令:/bin,/usr/bin,/usr/local/bin
管理命令:/sbin,/usr/sbin,/usr/local/sbin
共享库:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64
32bits的库:/lib,/usr/lib,/usr/local/lib
64bits的库:/lib64,/usr/lib64,/usr/local/lib64
注意:并非所有的命令都有一个在某目录与对应的可执行程序文件
命令必须遵循特定格式规范:EXE,msi,ELF(Linux)
~]# file /bin/ls
命令分为两类:
由shell程序的自带的命令:内置命令(builtin)
独立的可执行程序文件,文件名即命令名:外部命令
shell程序是独立的程序,负责解析用户提供的命令:
环境变量:
PATH:从哪些路径中查找用户键入的命令字符串所对应的命令文件;
~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
查找次序:自左而右;
查看命令类型:
type COMMAND
OPTIONS:
指定命令的运行特性;
选项有两种表现形式:
短选项:-C,例如:-l,-d
注意:有些命令的选项没有-;
如果同一命令同时使用多个短选项,多数可合并:-l -d = -ld
长选项:--word,例如:--help,--human-readable;
注意:长选项不能合并;
注意:有些选项可以带参数,此称为选项参数;
ARGUMENTS:
命令的作用对象:命令对什么生效;
注意:不同的命令的参数:有些命令可同时带多个参数,多个之间以空白字符分隔;
例如:ls -ld /var /etc
获取命令的使用帮助:
内部命令:
help COMMAND
外部命令:
(1)命令自带简要格式的使用帮助
# COMMAND --help
(2)使用手册:manual
位置:/usr/share/man
# man COMMAND
SECTION:
NAME:功能性说明
SYNOPSIS:语法格式
DESCRIPTION:描述
OPTIONS:选项
EXAMPLES:使用示例
AUTHOR:作者
BUGS:报告程序bug的方式
SEE ALSO:参考
...
SYNOPSIS:
[]:可选内容
<>:必须提供的内容;
a|b|c:多选一;
...:同类内容可出现多个;
使用手册:压缩格式的文件,有章节之分;
/usr/share/man
man1,man2,...
man1:用户命令;
man2:系统调用;
man3:C库调用;
man4:设备文件及特殊文件;
man5:文件格式:(配置文件格式)
man6:游戏使用帮助;
man7:杂项;
man8:管理工具及守护进程;
~]# man CHAPTER COMMAND
注意:并非每个COMMAND在所有章节下都有手册
查看命令哪些章节有帮助手册:
~]# whatis COMMAND
注意:其执行过程是查询数据库进行的;
手动更新数据库:
~]# makewhatis
man命令打开手册以后的操作方法:
翻屏:
空格键:向文件尾翻一屏;
b:向文件首部翻一屏;
Ctrl+d:向文件尾部翻半屏;
Ctrl+u:向文件首部翻半屏;
回车键:向文件尾部翻一行;
k:向文件首部翻一行;
G:跳转至最后一行;
#G:跳转至指定行;
1G:跳转至文件首部;
文件搜索:
/keyword:从文件首部向文件尾部依次查找;不区分字符大小写
?keyword:从文件尾部向文件首部依次查找:
n:与查找命令方向相同;
N:与查找命令方向相反;
退出:
q:quit
选项:
-M /PATH/TO/SOMEDIR:到指定目录下查找命令手册并打开之;
练习:获取useradd命令的用法
(1)添加用户gentoo:
# useradd gentoo
# id gentoo
(2)添加用了slackware,要求指定其所用的shell为/bin/tcsh;
# useradd -s /bin/tcsh slackware
# tail -l /etc/passwd
(3)info COMMAND
获取命令的在线文档
(4)很多应用程序自带帮助文档:/usr/share/doc/APP-VERSION
README:程序的相关的信息;
INSTALL:安装帮助;
CHANGES:版本迭代时的改动信息;
(5)主流发行版官方文档
http://www.redhat.com/doc
(6)程序官方的文档
官方站点上的"Document"
(7)搜索引擎
google
keyword filetype:pdf
keyword site.domain.tld
书籍的出版社:
O'Reiley
Wrox
机械工业、电子工业、人邮、清华大学、水利水电