一、Linux介绍
Linux发展
操作系统,英语Operating System简称为OS。说道操作系统就需要先讲一讲Unix,UNIX操作系统,是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。而linux就是一款类Unix系统。
通常人们对linux都有一个错误的认识,就是这个名词"linux操作系统",其实linux不是操作系统,linux是一个内核,linux系统构成包括:、Linux 内核、GNU 项目及其他项目的软件。当然,但人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。
Linux特点
多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性,良好的用户界面,出色的速度性能开源。
CentOS
主流:目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS
免费:RedHat 和CentOS差别不大,基于Red Hat Linux 提供的可自由使用源代码的企业CentOS是一个级Linux发行版本
更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!
我用的是CentOS 7,下面的指令也都是在CentOS 7上完成的操作。
二、基础命令
在CentOS 7中我们使用命令的格式是: 命令名称 [功能选项] [操作对象]
目录相关命令
目录下各个子目录的含义
- bin (binaries)存放二进制可执行文件
- sbin (super user binaries)存放二进制可执行文件,只有root才能访问
- etc (etcetera)存放系统配置文件
- usr (unix shared resources)用于存放共享的系统资源
- home 存放用户文件的根目录
- root 超级用户目录
- dev (devices)用于存放设备文件
- lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
- mnt (mount)系统管理员安装临时文件系统的安装点
- boot 存放用于系统引导时使用的各种文件
- tmp (temporary)用于存放各种临时文件
- var (variable)用于存放运行时需要改变数据的文件
ls :浏览目录下内容
ls -a: 查看隐藏文件(Linux中以.开头的都是隐藏文件)
ls -l: 查看文件详细信息(ls -lh 人性化处理)
ls / : 浏览根目录
make(mkdir):创建文件夹(目录)
mkdir -p: 递归创建 //mkdir -p test/abc(先创建test)
(不常用)rmdir(删除空目录)---用于清理空文件
rmdir -p: 递归删除
rm : (默认删除文件)
rm -r:递归删除文件并删除目录(删除目录及目录下的所用文件)
rm -rf: 忽略提示,直接删除。(慎用)
rm -rf ./*
cp : 将指定文件拷贝到指定目录下 //cp lete/passwd ./abc
(若没有abc目录,则是将passwd改名为abc)
cp -r: 递归拷贝所有文件
mv: 将指定文件或目录移动到指定路径下
mv -i: 增加提示信息
cd: 进入指定目录
cd ~: 快速返回当前家目录
文件相关命令
touch:创建一个文件,若已经有此文件,则刷新文件的时间属性(更多时候是用来刷新的)
touch -d: 使用指定时间刷新:(‘yyyy - mm - dd HH::MM::SS’)
stat: 显示文件详细信息
cat: 将文件的内容全部打印出来,显示在终端上(但是只能显示1000行,所以通常用来打印短小的文件)
more(无法灵活向上): 分页显示文件的内容(空格向下翻页,回车向下按行滚动,q退出,到结尾自动退出)
less(改良后): 增加字符串匹功能(/string 向下匹配,?string向上匹配)
(f/b 上下翻页) (j/k 上下按行滚动) (q退出 不自动退出)
head: 显示文件的前n行内容
head -n num: 显示文件前num行
tail: 显示文件尾部的内容(行)
tail -n num: 显示num行
tail -f abc.txt: 动态刷新文件的末尾内容,ctrl+c退出
压缩解压缩的命令
在linux下的压缩命令有三种:gzip,zip,bzip2,对应的解压缩命令也有三种:gunzip,unzip,bunzip2。
(保留原文件)zip/unzip: zip格式的压缩解压缩命令
(不保留原文件)gzip/gunzip: gzip格式的压缩解压缩命令
(不保留原文件)bzip2/bunzip2: bzip2格式的压缩解压缩命令 //压缩比例最高
tar: 对文件或目录进行打包/解包(常用)
-c 打包
-x 解包
-v 打包同时显示打包的信息
-f 用于指定压缩包的命令(通常是最后一个选项)
-z 在打包的同时进行gzip格式的压缩
...(还有很多,常用的如上)
tar -czvf test.targz file1 file2 dir1 dir2
匹配查找命令(常用)
grep: 在文件中匹配包含指定字符串的行(主要是用于通过文件名来找函数)
-i 查找时忽略大小写
-v 查找不包含指定字符的行(反向查找)
-r 对目录所有的文件进行匹配查找(多用于找宏)//注意:操作对象是目录:./
find: 在指定目录中找指定文件
-name 通过文件名字查找
-size 通过文件大小查找
-type 通过文件类型查找(d:目录文件 -:普通文件 c:字符设备文件 b:块设备文件 p:管道文件 l:符号链接文件 s:套接字文件)
-atime/-ctime/mtime 通过文件时间查找
find: ./ -name "hello*" -exec rm {} \;(找到包含“hello”字符的文件,并删除)
其他命令
ifconfig: 查看网卡信息
echo:显示文字或字符串 //echo "hello" >> a.txt
>>: 标准输出重定向,改变数据流向。
> : 清空重定向。
su: 切换用户
man: 查看命令手册
date:查看或这是系统时间
+%s 查看时间戳
+“%Y-%M-%D %H::%M::%S”:按照指定的格式显示时间
-s‘yyyy-mmmm-dddd hh::mm::ss’: 按照指定的格式设置系统时间
ctrl+c: 中断当前操作
tab: 自动补全(常用)
cal: 查看日历
-y 查看整年日历
-yj 显示天数
bc: 计算器
|: 管道符,连接两个命令
reboot: 重启电脑
shutdown -h now: 关机