首页 > 代码库 > Linux基础入门(二)
Linux基础入门(二)
Linux的哲学思想:
1.一切皆文件:把几乎所有资源统统抽象为文件形式;包括硬件设备,甚至通信接口等;
open(), read(), write(), close(), delete(), create()
2.由众多功能单一的程序组成;一个程序只做一件事,并且做好;组合小程序完成复杂任务;
3.尽量避免跟用户交互;
目标:易于以编程的方式实现自动化任务;
4.使用文本文件保存配置信息;
Linux的哲学思想之一:一切皆文件
表现之一:硬件设备也通过文件表示
物理终端:/dev/console
虚拟终端:/dev/tty# [1,6]
串行终端:/dev/ttyS#
伪终端:/dev/pts/#
物理终端,控制台:console
虚拟终端:6个,tty
Ctrl+Alt+F[1-6]
图形终端:
CentOS 6:
Ctrl+Alt+F7
CentOS 7:
在哪个虚拟终端启动,即位于哪个虚拟终端
串行终端:ttyS
伪终端:pty
查看终端设备:
[root@centos7 ~]# tty
/dev/pts/0
启动GUI:
在某一虚拟终端接口运行命令:startx &
CLI接口:命令行接口
[root@centos7 ~]# COMMAND
说明:
root: 当登录的用户
centos7: 当前主机的主机名,非完整格式;若想查看完整格式:hostname 即可获得
~:用户当前所在的目录(current directory),也称为工作目录(working directory);相对路 径;
#:命令提示符;
#:管理员账号,为root; 拥有最高权限,能执行所有操作;
$:普通用户,非root用户;不具有管理权限,不能执行系统管理类操作;
注意:建议使用非管理员账号登录;执行管理操作临时切换至管理员,操作完成即退回。
命令的语法通用格式:
# COMMAND [OPTIONS] [ARGUMENTS]
COMMAND: 发起一命令,请求内核将某个二进制程序运行为一个进程;
程序 --> 进程
静态 --> 动态(有生命周期:开启到结束之间)
命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件
多数系统程序文件都存放在:
/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)
命令分为两类:
由shell程序的自带的命令:内置命令(builtin)
独立的可执行程序文件,文件名即命令名:外部命令
shell程序是独特的程序,负责解析用户提供的命令;
环境变量:
PATH:从哪些路径中查找用户键入的命令字符串所对应的命令文件;查找次序:自左而右。
[root@centos7 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
查看命令类型:
[root@test1 ~]# type cd(command)
cd is a shell builtin
OPTIONS:
选项有两种表现形式:
短选项:-C, 例如-l, -d
注意:有些命令的选项没有-;
如果同一命令同时使用多个短选项,多数可合并:-l -d = -ld
长选项:--word, 例如--help, --human-readable
注意:长选项不能合并;
注意:有些选项可以带参数,此称为选项参数;(命令篇幅会体现)
ARGUMENTS:
命令的作用对象;命令对什么生效;
注意:不同的命令的参数;有些命令可同时带多个参数,多个之间以空白字符分隔;
例如:ls -ld /var /etc
/var和/etc就是作用对象
获取命令的使用帮助:
内部命令:
[root@test1 ~]# help COMMAND
外部命令:
(1) 命令自带简要格式的使用帮助
[root@test1 ~]# COMMAND --help
(2) 使用手册:manual
位置:/usr/share/man
[root@test1 ~]# man COMMAND
部分说明:
NAME:功能性说明
SYNOPSIS:语法格式
DESCRIPTION:描述
OPTIONS:选项
EXAMPLES:使用示例
AUTHOR: 作者
BUGS: 报告程序bug的方式
SEE ALSO: 参考
SYNOPSIS:
[]:可选内容;
<>:必须提供的内容;
a|b|c:多选一;
...:同类内容可出现多个;
使用手册:压缩格式的文件,有章节之分;/usr/share/man1, man2, ...
1:用户命令;
2:系统调用;
3:C库调用;
4:设备文件及特殊文件;
5:文件格式;(配置文件格式)
6:游戏使用帮助;
7:杂项;
8:管理工具及守护进行;
~]# man CHAPTER(章节) COMMAND
示例:
[root@centos7 ~]# man 1 ls
注意:并非每个COMMAND在所有章节下都有手册
如何查看命令在第几章节有:
[root@centos7 ~]# whatis ifconfig
ifconfig (8) - configure a network interface
注意:其执行过程是查询数据库进行的;
手动更新数据库:
[root@test1 ~]# makewhatis
man命令打开手册以后的操作方法:
翻屏操作:
空格键:向文件尾翻一屏;
b: 向文件首部翻一屏;
Ctrl+d:向文件尾部翻半屏;
Ctrl+u:向文件首部翻半屏;
回车键:向文件尾部翻一行;
k: 向文件首部翻一行;
G:跳转至最后一行;
#G: 跳转至指定行;
1G:跳转至文件首部;(g也是可以跳至首都)
文本搜索:
/keyword:从文件首部向文件尾部依次查找;不区分字符大小写;
?keyword:从文件尾部向文件首部依次查找;
n: 与查找命令方向相同;
N: 与查找命令方向相反;
退出:
q: quit
选项:
-M /PATH/TO/SOMEDIR:到指定目录下查找命令手册并打开之;
(3) info COMMAND
获取命令的在线文档;
(4) 很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
README:程序的相关的信息;
INSTALL: 安装帮助;
CHANGES:版本迭代时的改动信息;
(5) 主流发行版官方文档
http://www.redhat.com/doc
(6) 程序官方的文档:
官方站点上的“Document”
(7) 搜索引擎
如何使用收索功能:
keyword filetype:pdf(文件类型搜索)
keyword site:domain.tld(域名搜索)
本文出自 “变相怪杰” 博客,请务必保留此出处http://waldenkk.blog.51cto.com/2410270/1902370
Linux基础入门(二)