前言
本章将会讲解Linux的常用命令。
一.常用命令
1.Linux的基本原则:
- 1.由目的单一的小程序组成;组合小程序完成复杂任务;
- 2. 一切皆文件;
- 3. 尽量避免捕获用户接口;(尽量不和用户进行交互,就是一个程序一但开始运行,就不需要用户进行任何操作,如ls命令,ifconfig命令)
- 4. 配置文件保存为纯文本格式
用户接口:
是一种独特的应用程序,能够为用户提供启动其他应用程序的机制
CLI:命令提示符,用户输入命令即可
shell:sh,csh,ksh,bash,zsh,tcsh
GUI: 图形界面用户接口,一般通过点击来启动应用程序
- GNOME:C语言
- KDE:C++
- XFCE:轻量级
终端类型:tty命令可以查看
- 虚拟终端(tty1-6) /dev/tty# #号为数字号码
- 伪终端(ssh、Telnet连接称为伪终端或者在图形界面下打开的终端) /dev/pts/#
- 物理终端(console) /dev/console
- 串行终端(使用特定速率向外打印字符,通过串行接口连接)/dev/ttyS#
- 图形终端:可以使用startx命令启动 startx -- :2 可以启动第二个图形终端
2.命令形式
命令格式:
命令 选项 参数
选项:
- 短选项: - 输入快捷简单
- 多个选项可以组合:-a -b = -ab
- 长选项: -- 意思明了
参数:命令的作用对象
命令分为内部命令和外部命令
- 内部命令:是系统shell自带的命令
- 外部命令:是安装其他的程序产生的命令。
- 可以通过 type 查看命令是内部还是外部命令: type 命令关键字
帮助的方式:
- 1. 内部命令可以通过:help 命令例子: help cd
- 2. 外部命令可以通过:命令 --help 例如:ls --help
- 3. 可以通过man命令获取命令帮助: 例如: man cd whatis 查看都有哪 些man章节
- 4. 可以通过info命令获取命令帮助: 例如: info cd
- 5. 通过百度\google等搜索引擎 可以寻求帮助
- 6. 可以通过下载一个linux的中文命令大全
3.命令举例:ls
常用选项:
- -h:做单位转换
- -a: 显示以.开头的隐藏文件
- . 表示当前目录
- .. 表示父目录-A
- -d: 显示目录自身属性
- -i: index node, inode
- -r: 逆序显示
- -R: 递归(recursive)显示
ls -l:长格式
长格式查看结果
文件类型: 可使用file命令查看
- -:普通文件 (f)
- d: 目录文件
- b: 块设备文件 (block)就是存储数据以供系统存取的接口设备,简单而言就是硬盘
- c: 字符设备文件 (character)即串行端口的接口设备,例如键盘、鼠标等等
- l: 符号链接文件(symbolic link file)
- p: 命令管道文件(pipe)是一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误
- s: 套接字文件(socket)这类文件通常用在网络数据连接。
- PS: 我们可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。
- 最常在 /var/run目录中看到这种文件类型。
文件权限:9位,每3位一组,每一组:rwx(读,写,执行), r--文件硬链接的次数文件的属主(owner) 文件的属组(group) 文件大小(size),单位是字节
- 时间戳(timestamp):最近一次被修改的时间(mtime),可以使用stat命令可以看到
- 访问:access atime 是在读取文件或者执行文件时更改的
- 修改:modify, mtime 是在写入文件时随文件内容的更改而更改的改变:change, ctime metadata,元数据 状态改变 是在写入文件、更改所 有者、权限或链接设置时随inode 的内容更改而更改的。
4.文件系统
FHS: filesystem hierarchy standard 文件系统层级标准
rootfs(): 根文件系统/
- /boot: 系统启动相关的静态文件,如内核、initrd或者initramfs,以及grub(bootloader)
- /dev: 所有设备的设备文件,设备文件也称为特殊文件(仅有元数据,没有数据,是设备的入口)
设备文件:
- 块设备:随机访问,数据块
- 字符设备:线性访问,按字符为单位
- 设备号:主设备号(major)和次设备号(minor) 主设备号相同的设备是同类设备(使用同一个驱动程序)
通过cat /proc/devices 命令查看当前已经加载的设备驱动程序的主设备号例如:
ls -l /dev/sr0 brw-rw---- 1 root cdrom 11, 0 4月1 08:59 /dev/sr0
11为主设备号,0为次设备号
/etc:配置文件
/home:普通用户的家目录,每一个用户的家目录通常默认 为/home/USERNAME
/root:管理员的家目录;
/lib:基本的共享库和内核模块 库文件 本质上来说库是一种可执行代码的二进制形式,可以被操作系统 载入内存执行。
静态库, .a 静态库的代码在编译过程中已经被载入可执行程序,因此体积较大
动态库,.dll, .so (shared object) 共享库的代码是在可执行程序运行时才 载入内存的,在编译过程中仅简单的引用,因此代码体积较小。
/lib/modules:内核模块文件
/media:为了移动设备的挂载点目录,例如光盘、U盘
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录
/proc:内核及进程信息的虚拟文件系统,伪文件系统,内核映射文件,只存在内存中,它以文件系统的方式为访问系统内核数据的操作提供接口。
/sys:伪文件系统,硬件设备信息虚拟文件系统接口,跟硬件设备相关的属性映射文件,该目录下是全局设备结构体系,包含所有被发现的注册在各种总线上的各种物理设备
/tmp:临时文件, /var/tmp
/var:可变化的文件(内容发生变化)/var/log 日志信息
/var/log 日志信息
/bin:基础的用户命令二进制程序, 为所有用户使用/sbin:系统二进制程序,一般为管理命令/bin和
/sbin 系统自身启动和运行时可能会用到的核心二进制命令
/usr:shared, read-only (Unix System Resource,即Unix系统资源的缩写),不适合放在/bin或/etc目录下的额外的工具
/usr/bin 大多数用户使用到的命令
/usr/sbin 非核心的系统命令
/usr/bin和/usr/sbin 系统运行时,用户为完成某种操作可能用到的命令 /usr/lib
/usr/local:主要存放那些手动安装的软件
- /usr/local/bin
- /usr/local/sbin
- /usr/local/lib
- /usr/share/man /usr/share/doc 帮助文件
应用程序的组成部分:
二进制文件、库文件、配置文件、帮助文件
路径:
- 绝对路径:凡是以“/”开头的输入路径的方式都是绝对路径
- 相对路径:凡是以“.”或者“..”开头的都是相对路径
每个绝对路径都可以切割成2部分:
- 基名: basename /path/to/somewhere 结果为somewhere
- 目录名: dirname /path/to/somewhere 结果为/path/to
查看服务器基本信息
常用命令
命令含义 cat /proc/cpuinfo 查看cpu信息 cat /proc/meminfo 查看内存信息 free 查看内存使用情况 uptime 监控CPU情况 cat /etc/redhat-release 查看发行版信息 hostname 查看主机名 ip addr 查看ip信息 ifconfig 查看ip信息 netstat 查看网络连接信息、路由表等,常用来查看端口打开情况 fdisk -l 查看硬盘信息 df 查看设备挂载信息
创作不易,求关注,点赞,收藏,谢谢~