Linux介绍和基本使用:
1.目录
相当于windows中的文件夹
2.路径
- 路径反映目录和文件的位置
文件位置:
- windows :盘符:\文件夹\文件
- linux: /home/kiosk/Pictures/
路径分为绝对路径和相对路径
-
绝对路径:
绝对路径是从目录树的树根“/”开始往下直至到达文件所经过的所有节点目录
上下级目录之间用“/”隔开
绝对路径第一个字符一定为“/” -
相对路径:
相对路径是目标目录对于当前目录的位置
“.”指当前目录 “…”指上级目录 当前目录的文件"./“开头
上级目录的文件”…/"开头
3.Linux中的文件分类
可以通过颜色区分,也可以通过指令来区分 file 文件名。
- 普通文件
- 目录文件
- 设备文件 字符设备文件 块设备文件
- 管道文件
- 链接文件
4.Linux的文件权限
- 读 【r】 read
- 写 【w】 write
- 执行 【x】 execute
d rwx rwx rwx
分为三组
d 目录 成为文件类型
第一组: 文件的所属用户
第二组: 文件的所属组
第三组: 其他用户
5.Linux常用指令
- 格式:
命令 选项 参数
- 查看帮助文档:
–help
ls --help
- man 打开手册页
man ls
- man 设置了如下功能键:
空格键 显示手册页的下一屏
Enter键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出 man 命令
h 列出所有功能键
/word 搜索word字符串
u 找到下一个
- 快捷键:
tab 智能补全
上下箭头 历史记录
- 在终端中退出锁定:
<ctrl>+<C>
- 清屏:
<ctrl>+<L>
- 在终端中打开新的终端窗口:
<ctrl><shift>+<T>在终端中打开新的终端窗口
<ctrl>+<PgUp> 回到前一个窗口
<ctrl>+<PgDn> 进入下一个窗口
- 在终端中打开另一个终端窗口:
<ctrl><shift>+<N>
6.文件管理相关指令
- 文件管理常用指令:
ls :显示指定目录下的所有子目录与文件,不包含隐藏文件
ls -a : 显示指定目录下的所有子目录与文件,包括隐藏文件
ls -l :以列表形式显示文件的详细信息
ls -all :以列表形式显示文件的详细信息,包含隐藏文件(快捷方式 ll)
ls -lh :配合-l,以人性化方式显示文件大小
- touch #新建文件,修改文件时间戳
touch file #建立空文件(把文件时间同步到当前时间)
touch file_1 file_2 #建立空文件
touch -t YYYYMMDDHHmm.ss file #把文件改到制指定时间
- vim #文本编辑器
vim file_1 #进入vim浏览模式
'''按<i>进入编辑模式 按<Esc>退出编辑模式 输入 :wq 保存并退出'''
- vim 异常退出
##当vim编写文件时在未保存更改内容的时候被强制关闭
##vim出现异常
#[O]只读打开文件
#(E)继续编辑
#(R)恢复未保存内容编辑
#(D)删除.swp文件进入编辑
#(Q)退出当前文件编辑
#(A)推出 vim 程序
- vim 同时打开多个文件
vim -o file_1 file_2 #上下模式打开两个文件
#<ctrl>+<w> <上\下> 来转换控制窗口
vim -p file_1 file_2 #左右模式打开两个文件
:tabn #进入下一个窗口
:tabp #进入上一个窗口
- cat ##显示文件的全部内容
cat file_1
cat -b file_1 #显示文件内容并显示行号,不显示空行的行号
cat -n file_1 #显示文件内容并显示行号
- head 查看文件前多少行
head file_1 #默认显示文件前十行
head -n file_1 #n代表数字,显示文件前n行
- tail 查看文件后多少行
tail file_1 #默认显示文件后十行
tail -n file_1 #n代表数字,显示文件后n行
- less ##分页浏览
less file_1 #进入less模式查看file_1
#less模式中<上><下>逐行查看文件内容
#/关键字 搜索关键字 <n>向下匹配 <N>向上匹配
#<v> 进入vim编辑模式
#<q> 退出less模式
- 通配符:
【*】 匹配任意多个字符
【?】 匹配任意一个字符 a? 两个字符
【[a-z]】 区间法,匹配a-z的所有字符,只能确定一个字符
【[abcde]】 穷举法 权直法 匹配abcde的所有字符 只能确定一个字符
- 输出重定向:
> 输出重定向会覆盖掉原来的内容 ls > aaaa.txt
>> 输出重定向会追加到文件的的尾部 ll > aaaa.txt
- 分屏显示:
more '''一个屏幕不能全部显示,一页一页的显示出来,
按空格翻页,按回车往下滚一行
按q键退出'''
-
管道: |
一个命令的输出可以通过管道作为另一个命令的输入
例:ll | more
输出 输入
- 切换工作目录:cd
cd 切换到当前用户的主目录(/home/用户目录),用户登陆的时候,默认的目录就是用户的主目录
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 切换到当前目录
cd .. 切换到上级目录
cd - 可进入上一次进入的目录
pwd 可以查看当前工作目录
- 创建目录:
mkdir 新建一个目录,参数-p可递归创建目录
mkdir a/b/d -p
rmdir 删除一个目录(被删目录须为空)
- 删除文件:
rm 删除一个文件
参数 含义
-i 以进行交互的方式执行
-f 强制删除,忽略不存在的文件,无需提示
-r 递归的删除目录下的内容,删除文件夹时必须加此参数
- 建立链接文件:
- 硬链接:只能链接普通文件,不能链接目录,类似于拷贝,与拷贝的区别是,源文件(链接文件)改变内容,链接文件(源文件)跟着改变
- 软链接:软链接不占用磁盘空间,源文件删除则软链接失效,类似于Windows下的快捷方式
- 使用格式:
ln 源文件 链接文件
ln -s 源文件 链接文件
- 查看或者合并文件内容:cat
cat 文件名 #查看
cat 文件名 >> 文件名 #合并
-
文本搜索:grep
格式:grep -选项 ‘搜索内容串’ 文件名
grep 'a' 1.txt
选项 含义
-v 显示不包含匹配文本的所有行(相当于求反)
-n 显示匹配行及其行号
-i 忽略大小写
参数(搜索内容串)(通配符) 含义
^a 行首,搜索以a开头的行
grep -n '^a' 1.txt
ke$ 行尾,搜索以ke结束的行
grep -n 'ke$' 1.txt
. 匹配任意一个非换行的字符
* 匹配任意字符(大于0的整数)
- 计算文件行数或字数:wc
选项 含义
-l 统计行数
-w 统计字数,一个字被定义为由空白、跳格或换行符分隔的字符串
-c 统计字节数
-m 统计字符数。这个标志不能与-c一起使用
-
文件搜索:find
用来在特定目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件
find ./ -name test.sh #查找当前目录下的所有名为test.sh的文件
find ./ -name '*.sh' #查找当前目录下所有后缀名为.sh的文件
find ./ -name "[A-Z]*" #查找当前目录下所有以大写字母开头的文件
find /tmp -size 2M #查找在/tmp目录下等于2M的文件
find /tmp -size +2M #查找在/tmp目录下大于2M的文件
find /tmp -size -2M #查找在/tmp目录下小于2M的文件
find ./ -size +4k -size -5M #查找当前目录下大于4k,小于5M的文件
find ./ -perm 0777 #查找当前目录下权限为777的文件或目录
- 复制文件:cp
cp file1 file2 #cp 文件 目的地文件
cp file_1 file_2 dir_1 #cp 文件1 文件2 目的地目录
cp -r dir_1 dir_2 #cp 目录1 目录2
cp -a dir_1 dir_2 #cp 目录1 目录2
##复制原理(按照源文件建立新文件(抄作业))
- 移动文件:mv
mv file_1 file_2 dir_1 #将file_1和file_2 移入dir_1
mv file_1 file_2 #重命名file_1 为file_2
ls -i file_1 #查看文件节点号 相当于文件的身份证(判断是否产生新文件)
## 移动原理:相同设备分区中的文件移动是重命名的过程
##不同分区的文件移动是拷贝删除过程
- 文件类型查看:
file file_1 #查看file_1的真实类型
file_1:
hello xujie!!
file file_1 #Unicode text
file_2:
#!/bin/bash
file file_2 #Bourne-Again shell script, ASCII text executable
file_3:
#include<stdio.h>
file file_3 #C source, ASCII text
7.解档归档,压缩解压缩
- 归档解档:tar
tar [参数] 打包文件名 文件
tar -cvf 归档文件名.tar file_1 file_2 file_3 dir_1 dir_2 #归档
tar -xvf 归档文件名.tar -C 路径 #解档
常用参数:
参数 含义
-c 生成档案文件,创建打包文件
-v 列出归档解档的详细过程,显示进度
-f 指定档案文件名,f后面一定是.tar文件,所以必须放在选项最后
-t 列出档案中包含的文件
-x 解开档案文件
注:除了f要放在参数的最后,其他参数的顺序任意。
- 文件压缩解压:gzip
gzip 归档文件名.tar
生成一个文件 归档文件名.tar.gz 文件大小小于归档文件 原文件不在了
gzip -d 归档文件名.tar.gz
生成一个文件 归档文件名.tar
一步归档压缩:
tar -czvf 文件名.tar.gz file_1 file_2 file_3 dir_1 dir_2
一步解归档压缩:
tar -xzvf 文件名.tar.gz -C 路径
- bzip2:
压缩用法:tar -cjvf 压缩包包名.tar.bz2 file_1 file_2 file_3 dir_1 dir_2
解压用法:tar -xjvf 压缩包包名.tar.bz2 -C 路径
- zip/unzip:
压缩: zip 文件名(没有扩展名) file_1 file_2 file_3 dir_1 dir_2
解压缩: unzip 文件名.zip -C 路径
查看命令位置:which
which ls