1. 文件的查找
1)find [path] [选项] [action] 在系统中搜索符合条件的文件名,如果需要模糊査询,则使用通配符进行匹配
(1)-type 查找文件的类型为type的, 例如 find / -type s
(2)-size 查找比size要大(+)还是小(-)的文件, 例如 find / -size +1000k
(3)-name 通配符 例如 find /etc -name "*bash*"
(4)-exec command 后面可以接其他的命令来处理找到的内容,例如 find / -perm +7000 -exec ls -l {} \
2. 文件内容查阅
1)cat [选项] 文件名 査看文件内容
(1)-A 相当于 -vET 选项的整合,用于列出所有隐藏符号
(2)-E 列出每行结尾的回车符 $
(3)-n 显示行号
(4)-T 把 Tab 键 ^I 显示出来
(5)-V 列出特殊字符
2)more 文件名 分屏显示文件的命令
(1)空格键 向下翻页
(2)b 向上翻页
(3)回车键 向下滚动一行
(4)/ 字符串 搜索指定的字符串
(5)q 退出
3)less 一页一页翻,可以前后翻
(1)空格键(Space) 向下翻一页
(2)Enter 向下滚动一行
(3)/字符串 向下查询字符串这个关键字
(4)?字符串 向上查询字符串这个关键字
(5)b 往回返
(6)PageDown 向下翻页
(7)PageUp 向上翻页
4) head [选项] 文件名 显示文件开头的命令
(1)-n 行数 从文件头开始,显示指定行数
(2)-v 显示文件名
5)tail [选项] 文件名 显示文件结尾的命令(且可持续监听)
(1)-n 从文件结尾开始,显示指定行数
(2)-f 监听文件的新増内容
6)grep [选项] "搜索内容" 文件名 在文件中提取和匹配符合条件的字符串行
(1)-A 数字 列出符合条件的行,并列出后续的 n 行
(2)-B 数字 列出符合条件的行,并列出前面的 n 行
(3)-c 统计找到的符合条件的字符串的次数
(4)-i 忽略大小写
(5)-v 反向査找
(6)--color=auto 搜索出的关键字用颜色显示
7)cut [选项] 文件名 用于显示每行从开头算起 num1 到 num2 的文字
(1)-f 列号 提取第几列
(2)-d 分隔符 按照指定分隔符分割列,默认为制表符
(3)-c 字符范围 不依赖分隔符来区分列,而是通过字符范围(行首为 0)来进行字段提取。"n-"表示从第 n 个字符到行尾;"n-m"表示从第 n 个字符到第 m 个字符;"-m"表示从第 1 个字符到第 m 个字符
8)sed [选项] [sed脚本] 文件名 能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上。主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等
(1)-n 只打印模式匹配的行
(2)-e 直接在命令行模式上进行sed动作编辑,此为默认选项
(3)-f 将sed的动作写在一个文件内,用–f filename 执行filename内的sed动作
(4)-r 支持扩展表达式
(5)-i 直接修改文件内容
sed动作说明
(1)a 新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)
(2)c 取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行
(3)d 删除,因为是删除啊,所以 d 后面通常不接任何咚咚
(4)i 插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)
(5)p 打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行
(6)s 取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
9)wc [选项] 文件名 统计文件中到底有多少行、多外单词、多少个字符
(1)-l 只统计行数
(2)-w 只统计单词数
(3)-m 只统计字符数
3. 软件安装
1)rpm —— Red-Hat Package Manager(RPM软件包管理器)
(1)rpm包的安装 rpm -ivh 包全名
(2)rpm包的升级 rpm -Uvh 包全名
(3)rpm包的卸载 rpm -e 包名
(4)查询软件包是否安装 rpm -q 包名
(5)查询系统中所有安装的软件包 rpm -qa
(6)查询软件包的详细信息 rpm -qi
(7)查询软件包的文件列表 rpm -ql
(8)查询系统文件属于哪个RPM包 rpm -qf 系统文件名
(9)查询软件包的依赖关系 rpm -qR 包名
2)yum —— yum 是改进型的 RPM 软件管理器,它很好的解决了 RPM 所面临的软件包依赖问题
(1)查询所有已安装和可安装的软件包 yum list
(2)查询执行软件包的安装情况 yum list 包名
(3)查找与关键字相关的所有软件包 yum search 包名
(4)查询执行软件包的详细信息 yum info 全包名
(5)yum 安装软件包 yum -y install 包名
(6)yum 升级软件包 yum -y update 包名
(7)yum 卸载软件包 yum remove 包名
4. 打包和压缩
1)tar
做打包操作 tar [选项] 源文件或目录
(1)-c 将多个文件或目录进行打包
(2)-A 追加 tar 文件到归档文件
(3)-f 包名 指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名
(4)-v 显示打包过程
做打包压缩操作 tar [选项] 压缩包 源文件或目录
(1)-z 压缩为".tar.gz" 格式
(2)-j 压缩为 ".tar.bz2"格式
-cvf同上
解打包操作 tar [选项] 压缩包
(1)-x 对 tar 包做解打包操作
(2)-f 指定要解压的 tar 包的包名
(3)-t 只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作
(4)-C 指定解打包位置
(5)-v 显示解打包的具体过程
解打包解压缩 tar [选项] 压缩包
(1)-z 解".tar.gz" 格式的压缩文件
(2)-j 解 ".tar.bz2"格式的压缩文件
-xvf同上
2)zip [选项] 压缩包名 源文件或源目录列表 zip压缩
(1)-r 递归压缩目录,及将制定目录下的所有文件以及子目录全部压缩
(2)-m 将文件压缩之后,删除原始文件,相当于把文件移到压缩文件中
(3)-v 显示详细的压缩过程信息
(4)-q 在压缩的时候不显示命令的执行过程
(5)-压缩级别 压缩级别是从 1~9 的数字,-1 代表压缩速度更快,-9 代表压缩效果更好
(6)-u 更新压缩文件,即往压缩文件中添加新文件
3) unzip [选项] 压缩包名 查看和解压缩 zip 文件
(1)-d 将压缩文件解压到指定目录下
(2)-n 解压时并不覆盖已经存在的文件
(3)-o 解压时覆盖已经存在的文件,并且无需用户确认
(4)-v 查看压缩文件的详细信息,包括压缩文件中包含的文件大小、文件名以及压缩比等,但并不做解压操作
(5)-t 测试压缩文件有无损坏,但并不解压
(6)-x 解压文件,但不包含文件列表中指定的文件
4)gzip [选项] 源文件 是 Linux 系统中经常用来对文件进行压缩和解压缩的命令,通过此命令压缩得到的新文件,其扩展名通常标记为“.gz” (注意是文件)
(1)-c 将压缩数据输出到标准输出中,并保留源文件
(2)-d 对压缩文件进行解压缩
(3)-r 递归压缩指定目录下以及子目录下的所有文件
(4)-v 对于每个压缩和解压缩的文件,显示相应的文件名和压缩比
5)gunzip [选项] 文件 gunzip 是一个使用广泛的解压缩命令,它用于解压被 gzip 压缩过的文件(扩展名为 .gz)
(1)-r 递归处理,解压缩指定目录下以及子目录下的所有文件
(2)-c 把解压缩后的文件输出到标准输出设备
(3)-f 强制解压缩文件,不理会文件是否已存在等情况
(4)-l 列出压缩文件内容
(5)-v 显示命令执行过程
(6)-t 测试压缩文件是否正常,但不对其做解压缩操作
6)bzip2 [选项] 源文件 只能对文件进行压缩(或解压缩),对于目录只能压缩(或解压缩)该目录及子目录下的所有文件。当执行压缩任务完成后,会生成一个以“.bz2”为后缀的压缩包
(1)-d 执行解压缩,此时该选项后的源文件应为标记有 .bz2 后缀的压缩包文件
(2)-k bzip2 在压缩或解压缩任务完成后,会删除原始文件,若要保留原始文件,可使用此选项
(3)-f bzip2 在压缩或解压缩时,若输出文件与现有文件同名,默认不会覆盖现有文件,若使用此选项,则会强制覆盖现有文件
(4)-t 测试压缩包文件的完整性
(5)-v 压缩或解压缩文件时,显示详细信息
7)bunzip2 [选项] 源文件 要解压“.bz2”格式的压缩包文件,除了使用“bzip2 -d 压缩包名”命令外,还可以使用 bunzip2 命令
(1)-k 解压缩后,默认会删除原来的压缩文件。若要保留压缩文件,需使用此参数
(2)-f 解压缩时,若输出的文件与现有文件同名时,默认不会覆盖现有的文件。若要覆盖,可使用此选项
(3)-v 显示命令执行过程
(4)-L 列出压缩文件内容
5. 服务管理与系统管理
1)vi /etc/services 查看服务与端口映射文件
2)netstat [选项] 查询系统中已经启动的服务
(1)-a 列出系统中所有网络连接,包括已经连接的网络服务、监听的网络服务和 Socket 套接字
(2)-t 列出 TCP 数据
(3)-u 列出 UDP 数据
(4)-l 列出正在监听的网络服务(不包含已经连接的网络服务)
(5)-n 用端口号来显示而不用服务名
(6)-p 列出该服务的进程 ID (PID)
3)ps [选项] 查看进程
(1)-a 显示一个终端的所有进程,除会话引线外
(2)-u 显示进程的归属用户及内存的使用情况
(3)-x 显示没有控制终端的进程
(4)-l 长格式显示更加详细的信息
(5)-e 显示所有进程
4)top [选项] 动态地持续监听进程地运行状态
(1)-d 秒数 指定 top 命令每隔几秒更新。默认是 3 秒
(2)-b 使用批处理模式输出。一般和"-n"选项合用,用于把 top 命令重定向到文件中
(3)-n 指定 top 命令执行的次数。一般和"-"选项合用
(4)-p 仅查看指定 ID 的进程
(5)-u 只监听某个用户的进程
5)lsof [选项] 根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件
(1)-c 字符串 只列出以字符串开头的进程打开的文件
(2)-d 目录 列出某个目录中所有被进程调用的文件
(3)-u 用户名 只列出某个用户的进程打开的文件
(4)-p pid 列出某个 PID 进程打开的文件
6)kill [信号] pid kill 命令会向操作系统内核发送一个信号(多是终止信号)和目标进程的 PID,然后系统内核根据收到的信号类型,对指定进程进行相应的操作
(1)-9 pid 杀死指定pid的进程
7)vmstat [选项] 动态的了解一下系统资源的使用状况
(1)-fs -f:显示从启动到目前为止,系统复制(fork)的程序数,此信息是从 /proc/stat 中的 processes 字段中取得的
-s:将从启动到目前为止,由一些事件导致的内存变化情况列表说明
(2)-S 单位 令输出的数据显示单位,例如用 K/M 取代 bytes 的容量
(3)-d 列出硬盘有关读写总量的统计表
(4)-p 分区设备文件名 查看硬盘分区的读写情况
8)free [选项] 用来显示系统内存状态,包括系统物理内存、虚拟内存(swap 交换分区)、共享内存和系统缓存的使用情况,其输出和 top 命令的内存部分非常相似
(1)-b/k/m/g 以Byte/KB/MB/GB为单位,显示内存使用情况
(2)-t 在输出的最终结果中,输出内存和 swap 分区的总
(3)-s 间隔秒数 根据指定的间隔时间,持续显示内存使用情况
6. 其他常用命令
1)history 查看历史执行命令
2)man 命令 查看某个命令的帮助信息
3)whereis 命令 不能搜索普通文件,而只能搜索系统命令
4)which 命令 也是搜索系统命令的命令
5)locate 文件名 只能按照文件名来进行搜索
6)sync 把内存中的数据强制向硬盘中保存
7)shutdown [选项] 时间 进行关机和重启
(1)-c 取消已经执行的 shutdown 命令
(2)-h 关机
(3)-r 重启
8)reboot/halt/poweroff/init 0/init 6 重启/关机/关机/关机/重启
9)ping [选项] ip 主要通过 ICMP 协议进行网络探测,测试网络中主机的通信情况
(1)-b 后面加入广播地址,用于对整个网段进行探测
(2)-c 次数 用于指定 ping 的次数
(3)-s 字节 指定探测包的大小
10)uname -r 查看linux内核版本
11) lsb_release -a 查看lsb以及发行版本
12)ifconfig 查看ip地址
参考网址
注:文章是经过参考其他的文章然后自己整理出来的,有可能是小部分参考,也有可能是大部分参考,但绝对不是直接转载,觉得侵权了我会删,我只是把这个用于自己的笔记,顺便整理下知识的同时,能帮到一部分人。
ps : 有错误的还望各位大佬指正,小弟不胜感激