Linux初级命令总结
第1节 查看当前系统版本及内核
cat /etc/redhat-release (查看系统版本)
centos linux release 7.4.1708 (core)
uname -r (查看系统内核)
3.10.0-693.el7.x86_64
uname -a (查看当前操作系统)
x86_64
第2节 识别当前状态
[root@localhost~]#
- root:当前登陆用户名
- @:分隔符
- localhoist:主机名
- ~:当前路径所在位置
- #:当前登陆用户提示符,普通用户$
第3节 linux命令操作语法
命令_[参数选项]_[文件目录]
第4节 常用的基础命令
1、mkdir:make directory 创建目录
例:mkdir /data (在/目录下创建data目录)
-p 递归,连续创建文件
2、touch:创建文件
例:touch /file.txt (在/目录下创建file.txt文件)
如果当前目录有相同文件,此操作会改变文件的时间戳
3、stat:查看文件的时间戳
4、ls:list 打印目录中的内容
例:ls / (列出/目录中的文件和目录)
- l (long)长格式
-d (directory)查看目录属性
-a 打印所有文件,包括隐藏文件
5、cd:change directory 切换目录
例:cd /etc (切换到etc目录)
绝对路径:以根目录为起点的路径 如: cat /etc/password
相对目录:以当前所在目录为起点的路径 如: vim password
6、pwd:print work directory 打印当前所在目录的绝对路径(我在哪)
7、cat:1,创建文件2,打印文件内所有内容
例:1.cat file.txt
2.cat >>file.txt<< eof (创建文件file.txt) eof为结束符,不是固定字符
eof
8、cp:copy 拷贝文件或目录
例:cp /etc/yum.conf /var (复制etc/yum.cof到var目录里面)
-a:相当于-pdr 它保留链接、文件属性,并递归地拷贝目录
-d:若源文件为为链接文件,复制时保留链接
-f :删除已存在的文件而不提示
-i :根-f相反提示 (默认提示)
-p:保留文件属性
-r :递归复制目录下所有文件和目录
9、mv:move 移动文件或目录 也可以改名 原地移动就是改名
例:mv /data /root/da (把data移动到/root下并改名为data.bak)
10、rm :remove 删除文件或目录 默认不会删除目录 必须加-r
例:rm /test
-r(recursive)删除目录
-f(force)强制删除
11、rmdir:删除空目录
#删除空文件
12、seq: 产生一个数到另一个数之间的整数
例:seq 1 10 列出1-10之间的所有数字 包括1 和10
-s 指定分隔符
-w 在数字前添0使得数字宽度相同
13、head:头部 读取文件前n行 默认是前十行
例:head /etc/yum.conf
-n 显示的行数
-c 显示的字节数
14、tail:尾巴 默认输出文件后十行
-n显示行数
-f 循环读取 不中断读取 只要更新内容就会显示
-s结合-f使用表示间隔几秒读取一次
15、which:显示命令的绝对路径
例:which cd
/bin/cd
16、alias:设置别名 显示当前系统设置的所有别名
17、unalias:取消别名
18、find:查找文件(此命令太强大 以后慢慢总结)
-type |
f 普通文件 |
d 目录文件 |
b 快设备文件 |
l 符号链接文件 |
s 套接字文件 |
p 管道文件 |
-name -user -nouser -atime
根据文件名查找 指定属主的所有文件 查找没有属主的文件 根据时间戳查找
-iname -group -nogroup -perm
不区分大小写 指定属组的所有文件 查找没有属组的文件 根据权限查找
-regex -uid -gid -size
基于正则表达式查找 指定uid 指定gid 根据文件大小查找
三剑客
老三 grep: global regular expression print 正则表达式搜索
例:grep test file.txt (过滤file.txt文件里面带有test字符的行)
-v 排除内容
-i (i)不区分大小写
-c 输出匹配的次数
-l(l) 只输出包含该字符串的文件的文件名
-n 标出指定行号
-s 不显示错误信息
-v 显示软件版本
-a 除了显示匹配的行之外,并显示当前行之后的后n行
-b 除了显示匹配的行之外,并且显示该行之前的前n行
-c 除了显示匹配的行之外,并且显示该行前后各n行
正则表达式的常用参数
^:以什么开头
$:以什么结尾
\:忽略特殊字符的原来意思
[ ]:匹配单个字符
[-]:范围 如 a-z
老二 sed:stream editor cditor 实现对文本的增删改查替换 流编辑器
例:sed -n “20,30” p test.txt (只查看文件中的20-30行)
sed -i “s/123/234/g” test.txt (全局替换文件中的123为234)
参数 -n 取消默认输出
- i 修改文件内容(默认是显示 不修改)
-e 允许多项编辑
打印 p 打印
s 查找并替换
g 与s联合使用时 表示全局替换
老大 awk :处理文本文件的语言,是一个强大的文本分析工具。
例:awk ‘nr>19&nr<31’ test.txt 查找test.txt中的10行
ls -l | awk '{print $1}' 输出ls -l 显示的内容的每一行的第一个字符串 默认按空格分隔
$0变量是指整条记录 $1表示当前行的第一个域 $2表示当前行的第二个域 。。。以此类推
-f 指定分隔符