目录:又称为文件夹,包含所有文件
路径:反映目录和文件的位置

文件位置:
Windows:盘符:\文件夹\文件.扩展名
Linux:/home/主文件夹/文件

Linux目录结构
Linux目录结构:

1、/主目录,也称为根目录,一般根目录只存放目录,在Linux下有且只有一个根目录,所有的东西都是从这里开始,当你在终端输入“/home”,其实是在告诉电脑,先从根目录开始,再进入到/home目录。
./当前目录
../上级目录

2、/bin:/usr/bin/:可执行二进制文件的目录,如常用的命令ls,tar,mv,cat等

3、/boot:放置Linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz

4、/dev:存放Linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount/dev/cdrom/mnt

5、/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件。

6、/home:系统默认的家目录新增用户账号时,用户的目录都存放在此目录下

7、/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一下额外的参数时需要函数库的协助。

8、/lost found:系统异常产生错误时,会将以下遗失片段放置于此目录下。

9、/mnt: /media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom/下,也不一定,可以选择任何位置进行挂载。

10、/opt:给主机额外安装软件所摆放的目录。

11、/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放在内存中,所以不占用磁盘空间。

12、/root:系统管理员root的家目录。

13、/sbin: /usr/slib:/usr/local/slib:放置系统管理员使用的可执行命令,如fdisk,shutdown,mout等。一般用户只能查看而不能设置和使用。

14、/tmp:一般用户正在执行的程序临时存放文件的目录,任何人都就可以访问,重要文件不可放置于此。

15、/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内。

16、/usr:应用程序存放目录,如/usr/bin存放应用程序;/usr/share存放共享数据:/usr/lib存放不能直接运行的,确实许多程序运行必须的一些函数库文件。

17、/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件,/var/log存放登陆文件 。

Linux中文件分为5类:普通文件(c)、目录文件、设备文件(c,b)、管道文件(s)、链接文件(l软链接)

文件权限
【r】read读
【w】write写
【x】execute执行

d rwx rwx rwx
第一组:文件主
第二组:文件所属组
第三组:其他用户

Linux命令:命令 选项 参数
自动补全 tab
历史记录 上下键
[命令] –heip(内部命令)
info [命令]
help [命令]
手册 man man
man [命令]
man -k 查找有关键字的命令

管道 |
重定向 >

【ls】查看文件
ls -a 查看所有文件包含隐藏文件
ls -l 以列表形式查看文件,不包含隐藏文件
ls -h 查看文件以1024倍数显示(MB GB)
ls -all 以列表形式查看文件,包含隐藏文件

【*】通配符匹配任意多个字符
【?】匹配任意一个字符
【[a-z]】区间法,匹配a到z的所有字符
【[abcde]】穷举法

【cd】切换工作目录
cd 切换到当前主目录
cd ~ 切换到当前用户的主目录
cd .. 切换到上级目录
cd ./ 切换到当前目录
cd – 切换到上一次目录

【pwd】显示当前目录

【rmdir】删除目录

【rm】删除文件
rm -r 递归删除
rm -f 强制删除
rm -i 询问删除

【mkdir】创建目录
mkdir 目录名 -p 递归创建

【ln】链接文件
ln 源文件 链接文件 硬链接(占据磁盘空间大,但是删除不会影响硬链接文件)
ln -s 源文件 链接文件 软链接(几乎不占据磁盘空间,但是删除对软链接文件有影响)

【cat】查看或者合并文件内容
cat 文件 文件

【wc】计算文件行列数
wc -l 文件名 计算文件行数
wc -w 文件名 计算文件字数
wc -c 文件名 计算字节数
wc -m 文件名 计算字符数

搜索相关命令

grep】文本搜索
grep -选项 ‘搜索内容’ 文件内容
-i 忽略大小写
-n 显示行号
-v 反选
常用正则:
【^a】以a开头的文件
【a$】以a结尾的文件
【.】匹配任意一个分换行字符
【*】匹配任意字符
【[]】匹配任意一个括号中的字符

【find】搜索文件(根目录全部查找)
find [搜索范围] [搜索条件]
find ./ -name a.txt(也可以使用通配符) 查找当前目录文件名为a.txt的文件
find ./ -size 45M 查找当前目录下大小为45M的文件 -a与
find ./ -size +20M 查找当前目录下大小为大于20M的文件
find ./ -perm 0777 查找当前目录下权限为0777的文件
atime 文件访问时间
ctime 修改文件属性的时间
mtime 修改文件内容的时间

【locate】文件搜索(从locate数据库里查找)
数据库的位置 /var/lib/mlocate
updatedb 更新数据库

【whereis】命令搜索
查看命令所在位置

【which】查看命令所在位置以及别名
which 命令
echo $PATH 路径变量

【cp】拷贝文件
cp 源文件 (目录)目的文件
-a 拷贝目录
-i 交互式

【mv】移动
mv 文件 目录
-i 交互式

【file】文件类型与介绍

压缩与解压

【zip】【uzip】压缩,解压缩
zip 压缩文件名 文件1 文件2 文件3
zip -r 压缩文件名 源目录名

gzip】压缩解压文件 .gz格式 gunzip解压缩
gzip -c 源文件 > 压缩文件.gz
gzip -r 目录
gzip 压缩文件.tar
gzipa -d 解压缩文件.tar

【bzip2】压缩 .bz2格式
bzip2 源文件(不能压缩目录)
bzip2 -k 保留源文件
bzip2、bunzip2解压缩

一步归档压缩 tar -c 文件名.tar.gz 文件1 文件2 文件3 -C 路径

【tar】归档文件 .tar.gz
tar -cvf 归档文件名.tar 文件1 文件2 生成归档文件
tar -xvf 归档文件名.tar -C 路径 解开归档
tar -gcvf 直接打包并压缩
tar -gxvf 解压并解开打包

【bzip2】压缩解压文件(与gzip类似)
tar -cjvf 文件名.tar.bz2 文件1 文件2 文件3 压缩,生成文件.zip
tar -xjvf 文件名.tar.bz2 -C 路径 解压缩

【whoami】查看当前用户
【who】【w】查看登录用户

who -m 只显示运行who命令的用户名,登陆终端,登陆时间
who -u 在登陆时间后显示最后一次操作到当前的时间间隔
who -q 只显示登录用户的账号和登录用户的数目

【last】【lastlog】查看最近的用户以及操作
【su】切换用户
【exit】推出用户


【groupadd】创建组(需要root权限)

groupadd 新建组名

【groupdel】删除组(需要root权限)
groupdel 组名

【usermod】更改用户组
usermod -g 组 用户

【useradd】添加用户
-d 指定目录
-m 自动建立目录
-g 指定组名称

userdel】删除用户

【passwd】设置用户密码

【chmod】修改文件(目录)权限
chmod u/g/o/a +/-/= rwx
u(user)->文件主 g(group)->同组用户 o(other)->其他用户 a(all)->所有
+增加权限 -删除权限 =设定权限

【chowm】修改文件所有者
chowm 用户名 文件(目录)

【chgrp】修改文件所属组
chgrp 用户组 文件(目录)

【cal】查看日历
【date】查看日期

【ps】查看进程
-a 显示所有进程
-u 显示进程详细状态

【top】动态显示进程
按键M根据内存使用率排序
按键P根据CPU占有率排序
按键T根据运行时间排序

【kill】终止进程

【&】(ctrl+z)放到后台
【jobs】查看后台
【fg】从后台唤醒

【reboot】重启操作系统
【shutdown】关机

shutdown -r 重启
poweroff 关机
halt 关机
shutdown -h time定时关机
init 0 关机(runlevel)
init 6 重启
logout 退出登录

挂载与卸载

mount 查看已经挂载好的设备
mount -a 根据/etc/fstab的内容,自动挂载
mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
文件系统Linux为ext3或ext4,光盘为iso9660
umount 设备文件名或者挂载点

【df】显示磁盘占有情况
-a 显示所有文件
-m 以字节形式显示
-T 显示文件系统

【du】检测目录所占磁盘空间大小
du 选项 目录
-a 递归显示目录中文件占有的数据块
-s 显示指定文件占有数据块
-b 以字节为单位显示
-l 计算所有文件大小

vim编辑器操作
vi(vim) filename 创建(编辑)文档
i 当前位置插入文字
a 光标右边插入
o 下方开启一行
O 上方开启一行
I 行首插入文字
A 行尾插入文字

n x 删除光标后n个字符
n X 删除光标前n个字符
D 删除光标位置到行尾的字符
n dd 删除当前行开始的行
n yy 复制当前行开始的n行
p 把粘贴板的内容插入到当前行
dG 删除光标开始到文件尾的所有字符

J 合并两行
. 执行上一个操作
u 撤销上一个命令

shift+zz 保存并退出
:wq 保存并退出
Linux命令笔记_搜索 保存退出
:w fliename 保存到指定文件
:q 退出
:q! 强制退出不保存
:! 暂时离开

目录:又称为文件夹,包含所有文件
路径:反映目录和文件的位置

文件位置:
Windows:盘符:\文件夹\文件.扩展名
Linux:/home/主文件夹/文件

Linux目录结构
Linux目录结构:

1、/主目录,也称为根目录,一般根目录只存放目录,在Linux下有且只有一个根目录,所有的东西都是从这里开始,当你在终端输入“/home”,其实是在告诉电脑,先从根目录开始,再进入到/home目录。
./当前目录
../上级目录

2、/bin:/usr/bin/:可执行二进制文件的目录,如常用的命令ls,tar,mv,cat等

3、/boot:放置Linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz

4、/dev:存放Linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount/dev/cdrom/mnt

5、/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件。

6、/home:系统默认的家目录新增用户账号时,用户的目录都存放在此目录下

7、/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一下额外的参数时需要函数库的协助。

8、/lost found:系统异常产生错误时,会将以下遗失片段放置于此目录下。

9、/mnt: /media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom/下,也不一定,可以选择任何位置进行挂载。

10、/opt:给主机额外安装软件所摆放的目录。

11、/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放在内存中,所以不占用磁盘空间。

12、/root:系统管理员root的家目录。

13、/sbin: /usr/slib:/usr/local/slib:放置系统管理员使用的可执行命令,如fdisk,shutdown,mout等。一般用户只能查看而不能设置和使用。

14、/tmp:一般用户正在执行的程序临时存放文件的目录,任何人都就可以访问,重要文件不可放置于此。

15、/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内。

16、/usr:应用程序存放目录,如/usr/bin存放应用程序;/usr/share存放共享数据:/usr/lib存放不能直接运行的,确实许多程序运行必须的一些函数库文件。

17、/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件,/var/log存放登陆文件 。

Linux中文件分为5类:普通文件(c)、目录文件、设备文件(c,b)、管道文件(s)、链接文件(l软链接)

文件权限
【r】read读
【w】write写
【x】execute执行

d rwx rwx rwx
第一组:文件主
第二组:文件所属组
第三组:其他用户

Linux命令:命令 选项 参数
自动补全 tab
历史记录 上下键
[命令] –heip(内部命令)
info [命令]
help [命令]
手册 man man
man [命令]
man -k 查找有关键字的命令

管道 |
重定向 >

【ls】查看文件
ls -a 查看所有文件包含隐藏文件
ls -l 以列表形式查看文件,不包含隐藏文件
ls -h 查看文件以1024倍数显示(MB GB)
ls -all 以列表形式查看文件,包含隐藏文件

【*】通配符匹配任意多个字符
【?】匹配任意一个字符
【[a-z]】区间法,匹配a到z的所有字符
【[abcde]】穷举法

【cd】切换工作目录
cd 切换到当前主目录
cd ~ 切换到当前用户的主目录
cd .. 切换到上级目录
cd ./ 切换到当前目录
cd – 切换到上一次目录

【pwd】显示当前目录

【rmdir】删除目录

【rm】删除文件
rm -r 递归删除
rm -f 强制删除
rm -i 询问删除

【mkdir】创建目录
mkdir 目录名 -p 递归创建

【ln】链接文件
ln 源文件 链接文件 硬链接(占据磁盘空间大,但是删除不会影响硬链接文件)
ln -s 源文件 链接文件 软链接(几乎不占据磁盘空间,但是删除对软链接文件有影响)

【cat】查看或者合并文件内容
cat 文件 文件

【wc】计算文件行列数
wc -l 文件名 计算文件行数
wc -w 文件名 计算文件字数
wc -c 文件名 计算字节数
wc -m 文件名 计算字符数

搜索相关命令

grep】文本搜索
grep -选项 ‘搜索内容’ 文件内容
-i 忽略大小写
-n 显示行号
-v 反选
常用正则:
【^a】以a开头的文件
【a$】以a结尾的文件
【.】匹配任意一个分换行字符
【*】匹配任意字符
【[]】匹配任意一个括号中的字符

【find】搜索文件(根目录全部查找)
find [搜索范围] [搜索条件]
find ./ -name a.txt(也可以使用通配符) 查找当前目录文件名为a.txt的文件
find ./ -size 45M 查找当前目录下大小为45M的文件 -a与
find ./ -size +20M 查找当前目录下大小为大于20M的文件
find ./ -perm 0777 查找当前目录下权限为0777的文件
atime 文件访问时间
ctime 修改文件属性的时间
mtime 修改文件内容的时间

【locate】文件搜索(从locate数据库里查找)
数据库的位置 /var/lib/mlocate
updatedb 更新数据库

【whereis】命令搜索
查看命令所在位置

【which】查看命令所在位置以及别名
which 命令
echo $PATH 路径变量

【cp】拷贝文件
cp 源文件 (目录)目的文件
-a 拷贝目录
-i 交互式

【mv】移动
mv 文件 目录
-i 交互式

【file】文件类型与介绍

压缩与解压

【zip】【uzip】压缩,解压缩
zip 压缩文件名 文件1 文件2 文件3
zip -r 压缩文件名 源目录名

gzip】压缩解压文件 .gz格式 gunzip解压缩
gzip -c 源文件 > 压缩文件.gz
gzip -r 目录
gzip 压缩文件.tar
gzipa -d 解压缩文件.tar

【bzip2】压缩 .bz2格式
bzip2 源文件(不能压缩目录)
bzip2 -k 保留源文件
bzip2、bunzip2解压缩

一步归档压缩 tar -c 文件名.tar.gz 文件1 文件2 文件3 -C 路径

【tar】归档文件 .tar.gz
tar -cvf 归档文件名.tar 文件1 文件2 生成归档文件
tar -xvf 归档文件名.tar -C 路径 解开归档
tar -gcvf 直接打包并压缩
tar -gxvf 解压并解开打包

【bzip2】压缩解压文件(与gzip类似)
tar -cjvf 文件名.tar.bz2 文件1 文件2 文件3 压缩,生成文件.zip
tar -xjvf 文件名.tar.bz2 -C 路径 解压缩

【whoami】查看当前用户
【who】【w】查看登录用户

who -m 只显示运行who命令的用户名,登陆终端,登陆时间
who -u 在登陆时间后显示最后一次操作到当前的时间间隔
who -q 只显示登录用户的账号和登录用户的数目

【last】【lastlog】查看最近的用户以及操作
【su】切换用户
【exit】推出用户


【groupadd】创建组(需要root权限)

groupadd 新建组名

【groupdel】删除组(需要root权限)
groupdel 组名

【usermod】更改用户组
usermod -g 组 用户

【useradd】添加用户
-d 指定目录
-m 自动建立目录
-g 指定组名称

userdel】删除用户

【passwd】设置用户密码

【chmod】修改文件(目录)权限
chmod u/g/o/a +/-/= rwx
u(user)->文件主 g(group)->同组用户 o(other)->其他用户 a(all)->所有
+增加权限 -删除权限 =设定权限

【chowm】修改文件所有者
chowm 用户名 文件(目录)

【chgrp】修改文件所属组
chgrp 用户组 文件(目录)

【cal】查看日历
【date】查看日期

【ps】查看进程
-a 显示所有进程
-u 显示进程详细状态

【top】动态显示进程
按键M根据内存使用率排序
按键P根据CPU占有率排序
按键T根据运行时间排序

【kill】终止进程

【&】(ctrl+z)放到后台
【jobs】查看后台
【fg】从后台唤醒

【reboot】重启操作系统
【shutdown】关机

shutdown -r 重启
poweroff 关机
halt 关机
shutdown -h time定时关机
init 0 关机(runlevel)
init 6 重启
logout 退出登录

挂载与卸载

mount 查看已经挂载好的设备
mount -a 根据/etc/fstab的内容,自动挂载
mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
文件系统Linux为ext3或ext4,光盘为iso9660
umount 设备文件名或者挂载点

【df】显示磁盘占有情况
-a 显示所有文件
-m 以字节形式显示
-T 显示文件系统

【du】检测目录所占磁盘空间大小
du 选项 目录
-a 递归显示目录中文件占有的数据块
-s 显示指定文件占有数据块
-b 以字节为单位显示
-l 计算所有文件大小

vim编辑器操作
vi(vim) filename 创建(编辑)文档
i 当前位置插入文字
a 光标右边插入
o 下方开启一行
O 上方开启一行
I 行首插入文字
A 行尾插入文字

n x 删除光标后n个字符
n X 删除光标前n个字符
D 删除光标位置到行尾的字符
n dd 删除当前行开始的行
n yy 复制当前行开始的n行
p 把粘贴板的内容插入到当前行
dG 删除光标开始到文件尾的所有字符

J 合并两行
. 执行上一个操作
u 撤销上一个命令

shift+zz 保存并退出
:wq 保存并退出
Linux命令笔记_搜索 保存退出
:w fliename 保存到指定文件
:q 退出
:q! 强制退出不保存
:! 暂时离开