Linux学习笔记(一)
Linux基本知识
Linux有两种含义
一种是linus编写的开源操作系统的内核
另一种是广义的操作系统
执行环境
云主机:比如我们使用的阿里云
虚拟机:virtual machine
常用版本
内核版本
内核版本下载地址
分为三部分:主版本号、次版本号、末版本号
次版本号是奇数为开发版,偶数为稳定版
发行版本
RedHat Enterprise Linux:收费
Fedora:稳定性差
CentOS:免费且稳定性好,基于RedHat Enterprise Linux的源码
Debian、Ubuntu:GUI比较好
镜像下载地址
CentOS 官方下载地址:https://www.centos.org/download/
终端的使用
图形终端
命令行终端
远程终端:一般我们工作中使用远程终端,SSH、VNC
常见目录介绍
/:根目录,类似windows中的”我的电脑“
/root:root用户的home目录
/home/username:普通用户的home目录
/etc:配置文件目录,类似windows中的”注册表“
/bin:命令目录
/sbin:管理命令目录
/usr/bin、/usr/sbin:系统预转的其他命令
常用命令
init 3
将图形终端切换为命令行终端。
命令行
以#开头:代表root用户
以$开头:代表普通用户
init 0
关机
type
用于确定命令是内部命令还是外部命令
clear
清楚屏幕
su - root
切换用户到root用户
帮助命令
man 帮助
- man是manual的缩写
示例:man ls,按q键退出提示
- man也是一条命令,分为9章,可以使用man命令获得man的帮助
示例:
man man
man 7 man
help 帮助
shell(命令解释器)自带的命令称为内部命令,其他的是外部命令
内部命令使用help帮助
示例:help cd
外部命令使用help帮助
示例:ls --help
info 帮助
info帮助比help帮助更详细,作为help的补充
示例:info ls
一切皆文件的Linux
文件查看
pwd
显示当前的目录名称
cd
更改当前的操作目录
cd /path/to/…:绝对路径
cd ./path/to/…:相对路径
cd …/path/to/…:相对路径
cd -:回到上一次操作的目录
ls
不加参数默认查看目录下的文件
- ls [选项, 选项…] [参数 …]:选项为扩充命令显示,参数即为操作对象
常用参数如下
- l:长格式显示文件
- a:显示隐藏文件
- r:逆序显示
- t:按照时间顺序显示
- R:递归显示
示例:
①ls /
②ls -l
长格式详解
-rw-------,10位介绍
第一位:表示文件的类型,普通文件就是-、目录文件夹就是d
后九位:表示文件或目录的权限
.1或.2:1代表1个文件,2代表该文件下面还有更多的文件
第一个root:代表哪个用户创建了该文件
第二个root:代表前一个用户是哪个用户组的
1617:代表当前文件的大小
3月 6 21:41:文件的最后修改时间
anaconda-ks.cfg:文件的名称
③ ls -l -r -t:按时间逆序排序显示长文件名
等价于:ls -lrt
④ls -lh /tmp/etc-backup.tar
目录文件的处理
mkdir
创建目录
- mkdir /a:如果根目录下a目录不存在,则创建a目录
- mkdir ./a:在当前目录下a目录不存在,则创建a目录,如果是当前目录可以不加./即mkdir a可达到同样的效果
- mkdir /a/b/c:在跟目录下各级目录不存在,在当前目录下创建多级目录
- mkdir -p /a/b/c/d/e/f/g:在跟目录下各级目录不存在则创建,存在则保留
rmdir
只能删除空目录
- rmdir /a:如果根目录下a目录存在且为空则删除
rm
删除非空目录
- rm -r /a:递归删除根目录下a目录及其内容,提示确认
- rm -f /a:强制删除文件,忽略不存在的文件,不提示确认
- rm -r -f /a:不提示确认删除目录,-r -f可合并-rf,此命令具有一定危险性,移除的时候需要特别注意
cp
复制文件和目录,cp命令只能复制文件,复制目录的话,需要加入-r参数
- cp -r /root/a /tmp:将/root下的a目录复制到/tmp中
- cp /filea /tmp:将/下的filea文件复制到/tmp中
- cp -v /filea /tmp:将/下的filea文件复制到/tmp中并显示过程
- cp -p /filea /tmp:将/下的filea文件复制到/tmp中,并保留原有文件属性(用户、权限、时间)
touch
创建一个空文件
- touch /filea:在/下创建filea文件
mv
文件重命名或移动文件位置
- mv /filea /fileb:将filea重命名为fileb
- mv /fileb /tmp:将fileb移动到/tmp下
- mv /tmp/fileb /filec:将/tmp/fileb移动到/下并重命名为tmp
通配符
- *:匹配任意字符
- ?:匹配单个字符
文本查看命令
cat
文本内容显示到终端
head
查看文件开头
tail
查看文件结尾
常用参数-f:文件内容更新后,显示信息同步更新
wc
统计文件内容信息
打包与压缩
- 最早的Linux备份介质是磁带,使用的命令时tar
- 可以将打包后的磁带文件进行压缩存储,压缩的命令是gzip和bzip2
- 经常使用的扩展名是.tar.gz、.tar.bz2、.tgz
- tar打包命令
常用参数
c:打包
x:解包
f:指定操作类型为文件
备份压缩
示例:tar cf /tmp/etc-backup.tar /etc
详解:
c:代表打包
f:代表指定操作类型为文件
/tmp/etc-backup.tar:打包成哪里的什么文件
/etc:将什么文件打包
对文件进行压缩gzip或bzip2,tar命令就是集成了gzip和bzip2两个命令,打包的同时即可压缩
- tar czf /tmp/etc-backup.tar.gz /etc
.gz代表进行了gzip压缩 - tar cjf /tmp/etc-backup.tar.bzip2 /etc
.bzip2可以缩写为bz2,代表进行了bzip2压缩,执行时间小于gzip,因为压缩的比例更高
解压缩
- tar xf /tmp/etc-backup.tar -C /root
解压缩tar类型的压缩包/tmp/etc-backup.tar解压到/root下 - tar zxf /tmp/etc-backup.tar.gz -C /root
解压缩gzip压缩包/tmp/etc-backup.tar.gz解压到/root下
注意:.tar.gz可缩写为.tgz - tar jxf /tmp/etc-backup.tar.bz2 -C /root
解压缩bzip2压缩包/tmp/etc-backup.tar.bz2解压到/root下
注意:.tar.bz2可缩写为.tbz2
强大的文本编辑器vi
四种模式
正常模式(Normal-mode)
- ”vim“直接enter或者”vim 文件名“直接enter
- 使用h、j、k、l来移动光标
h:向左移动光标
j:向下移动光标
k:向上移动光标
l:向右移动光标 - y命令(复制):一般不是单独使用,一般是按行复制(yy)或者从当前光标复制到当前行结尾(y$)
单行复制时无提示,多行复制是有提示信息
3yy:代表从当前行开始复制3行,复制成功后,会提示3 line yanked - p命令(粘贴):粘贴复制的数据,并且光标会到粘贴的数据的首字符
- d命令(剪切):按行剪切(dd)或者从当前光标剪切到当前行结尾(d$)
- u命令(撤销):撤销操作
- ctrl+r:退回上一步撤销
- x命令:删除指定的一个字符
- r命令:替换字符,点r之后再点击需替换为什么字符
- :set命令对本次文档生效(如果要对全局生效,需要修改vim配置文件)
:set nu:显示行号
:set nonu:关闭行号显示 - :nohl:去除高亮显示
- 如果要对全局生效,需要修改vim配置文件vimrc,在/etc/vimrc
在文件末尾添加:set nu,保存退出即可全局生效 - G命令:将光标快速移动到某行,11G(将光标移动到第11行),如果直接G表示移动到最后一行
- g命令:将光标快速移动到第一行
- ^:将光标快速移动到行首
- $:将光标快速移动到行尾
- /+要查找的内容:查找,按n查找下一个字符,shift+n向上查找字符
- : s/old/new:替换,旧单词替换为新单词,针对光标所在行
- :%s/old/new/g:全局替换,/g为全局操作
- :3,5s/old/new/g:将第三行到第五行的old替换为new
插入模式(Insert-mode)
- 在正常模式中输入i,下方出现插入字样,代表进入插入模式,可进行编写文件,插入数据,完成之后,点击esc回到命令模式
- 输入大写的I,进入插入模式,光标回到当前行的首字符
- 输入小写的a,进入插入模式,光标回到上次结束光标的下一位
- 输入大写的A,进入插入模式,光标回到当前行的结尾
- 输入小写的o,进入插入模式,光标当前行的下一行,产生一个新的空行
- 输入大写的O,进入插入模式,光标当前行的上一行,产生一个新的空行
命令模式(Command-mode)
- :w /root/a.txt:将文件保存到root下的a.txt文件中
如果我们使用的”vim 文件名“格式打开的文件,可以直接:w即保存文件 - :q :退出vim编辑器
- :wq :保存并退出
- :q! :不保存退出
- :! :临时去执行linux命令
例如:!ifconfig进行查看ip地址命令,然后任意键即可回到当前文本编辑器中
可视模式(Visual-mode)
三种进入可视模式的方式
- V:行可视模式
- v:字符可视模式
- ctrl+v:块可视模式
配合d和I命令可以进行块的便利操作
d命令(剪切):按行剪切(dd)或者从当前光标剪切到当前行结尾(d$)
I命令:输入大写的I,进入插入模式,光标回到当前行的首字符