Linux
一 Linux常用命令:
# 查看文件位置
whereis
# 查看文件类型
file
# 查看当前用户
whoami
# 我在那
pwd
# 查看内核信息
uname -a
# 输出打印语句
echo
# 清屏
clear
# 历史
history
特殊字符:
1.点号 .
1.1 如果文件的开始说明是一个隐藏文件
1.2 . 表示指向当前目录
1.3 ..指向当前目录的上一级目录
2 $ 变量
说明一个变量
name = seafwg echo $name // print seafwg
3 * 通配符
相当于sql中查询的%号
4 ~波浪线
1.当前用户的家目录
2.每个用户的家目录是不一样的
3.root家用户目录在系统跟目录下
4.其他用户的家目录在/home/用户名称为家目录
二 Linux文件系统
一切皆为文件
Linux维护着一个属性结构的文件模型
2.1 查找文件的方式:
1.相对路径:是以当前路径开头的
cd ../usr/xxx
2.绝对路径:是以跟路径开头的
cd /usr/xxx
2.2 Linux二级文件目录
/-:Linux根目录
|-- /bin:binary缩写,二进制文件目录,存放常用命令
|-- /boot:启动Linux时常用的一些核心文件,一些链接文件和一些镜像文件爱你
|-- /dev:device,该设备存放Linux的外部设备
|-- /etc:存放所有系统管理所需要的配置文件和自目录
|-- /home:用户的主目录,在Linux中每个用户都有一个自己的目录,一般目录名是用户的账号命名
|-- /lib:系统最基本的动态链接共享库,类似Windows中的DLL文件
|-- /lost+found:一般情况下是空的,当系统非法关机等就存放了一些文件
|-- /media:自动设别一些设备,U盘,光驱等,会自动挂在到此文件目录下
|-- /mnt:让用户临时挂在别的文件系统,我们可以将光驱挂载到/mnt/上,然后进入该目录就可以查看光驱里的内容了
|-- /opt:主机额外安装所摆放的目录,eg:安装一个Oracla数据库则就可以放到这个目录下,默认是空的
|-- /proc:虚拟目录,系统内存的映射,可以通过直接访问这个目录获取系统信息,这个目录的内容不在硬盘上而是在内存里,
|-- /sbin:Super User,系统管理员使用的系统管理程序
|-- /selinux:Redhat/Centos所特有的目录,Selinux是一个安全机制,相当于Windows的防火墙,存放的是Selinux相关文件
|-- /srv:该目录存放一些服务器启动后要提取的数据
|-- /sys:系统文件
|-- /temp:存放临时缓存文件
|-- /usr:用户的很多应用程序和文件,类似Windows的program files目录
|-- /usr
|-- /bin:系统用户使用的应用程序
|-- /sbin:超级用户使用比较高的管理程序和系统守护程序
|-- /src:内核源代码目录
|-- /var:存放不断扩充的东西,习惯经常修改的文件存放在此目录下,包含各种日志等
|-- /run:临时文件,存储系统启动以来的信息,系统重启时,该目录会删除
2.3 文件操作
-
cd 改变当前目录
cd /usr/xxx
-
**ls ll **
-
显示指定目录下的所有文件
-
文件类型:
- 普通文件 d 文件夹 l 软连接
-
-
mkdir 创建文件目录
mkdir -p a/b/c/d #自动创建文件父目录 mkdir -p seafwg/{1234}|s #一次可以创建多个自文件目录 ## 删除空文件夹 rmdir a
-
cp 拷贝文件
## cp 源文件 目标文件
## -r递归父目录下所有的目录
cp a /usr/local/
cp -r a /usr/local/
- mv 移动文件,以及修改文件名
mv a /usr/local # 移动文件
mv a aa # 修改文件名
-
rm 删除文件
# 删除 rm a rm -f a #强制删除 -f=force rm -rf a #强制删除a文件下所有的文件
-
touch 创建文件
-
stat 查看文件状态
- Inode 当前文件在文件系统中的唯一标识
- 时间:
- access 访问时间
- Modify 修改文件内容时间
- Change 修改文件元数据时间
-
ln 创建文件链接
-
软链接/硬链接
#创建一个软连接 ln -s seafwg sl #创建一个赢链接 ln seafwg hl
-
软链接和硬链接的区别:
- 软链接和原始文件不是同一个文件,给一个文件创建软链接后会产生一个链接源文件【每一个文件都有一个原始文件】,这个链接源文件关联原始文件的文件名,如果删除这个文件,则会出现软链接找不到该文件。
- 硬链接和原始文件使用文件系统中的同一个文件,可以使用硬链接备份重要的文件
-
2.4 读取文件信息
-
cat 将文件加载到内存中 默认顺序
-
tac将文件加载到内存中 以逆序加载
-
more less 分页加载内容
- 回车: 下一行
- 空格:下一页
- b:回退
- q:退出
-
head 从文章开头加载
# 从文章开头读取N行 head -5 a
-
tail 从文章的末尾加载
# 从文章的末尾读取N行
tail -5 a
# 精确加载某一行,第三行
head -3 a | tial -1
-
find 查找指定文件
# find 要查找的范围 -name 名字 find /etc -name profile
2.5 VI和VIM编辑器
2.5.1 打开文件
#正常打开
vi profile
#打开文件并且移动光标,移动到第八行
vi +8 profile
#打开最后一行
vi + profile
#查找 if n下一个
vi +/if profile
2.5.2 三种模式
1.视图模式
2.输入模式
3.命令模式
2.5.3 三种模式之间的转换
vi seafwg.js
|
vi/vim 的视图模式
a/A追加,i/I插入,o/O下/上一行 :进入命令模式
Esc Esc
编辑模式 命令模式
- 编辑模式 -> 输入模式
- i在当前位置插入数据
- I在行首插入数据
- a在当前位置后面追假数据
- A行尾追加
- o在当前行的下一行开启输入
- O在当前行的上一行开启输入
2.5.4 常用快捷键
-
跳转
G:最后一行 gg:跳转到行首 z-enter: 跳转一屏幕,光标到最底部 z-+:跳转一屏幕,光标到最顶部 z-.:跳转一屏幕,光标到中间 w/{num}w:跳转单词 e/{num}e:向上跳转单词 {num}j/k:跳转几行 dw:删除一个单词 {num}dw:删除num个单词 {num}dd:删除num行 u:撤销 {num}yw:复制num个单词 {num}yy:复制num行 {num}p:粘贴num次 {num}x:剪切num个字符 {num}r:替换num个字符 ZZ:保存并退出 ctr+s:锁屏 ctr+q:解锁
-
命令模式
set nu:设置行号
set nonu:取消行号
w:保存
q:退出
q!:强制退出,不保存
wq:保存并退出
/pattern:查找pattern单词
s/p1/p2/g:当前行中p2替换p1
{num1,num2}s/p1/p2/g:指定行中p2替换p1
g/p1/s//p2/g:全文替换
2.4.6 数据传输
-
lrzsz 与服务器之间的文件上传
- rz 文件上传
- sz 文件下载
-
服务器与服务器之间的传输
-
scp源数据地址(source) 目标数据地址(target)
scp root@192.168.xx.xx:/usr/local/xxx ./
-
2.4.7 文件压缩
-
tar 解压.tar.gz文件
tar -zxvf xxx.tar.gz -- x:解压,v:过程,f:文件 tar -zcf xxx yyy: 压缩修改名称 tar -zxf xxx -C /usr/local/:-C指定压缩文件目录
-
zip和unzip解压和压缩zip文件
# 安装zip unzip yum install zip unzip -y # 压缩 zip -r xxx yyy # 解压 unzip xxx