Linux目录结构
Linux中一切皆文件
根目录:
/:最顶层的目录,所有目录的根
一些重要的目录:
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/lib:系统开机所需要最基本的动态连接共享库,其作用类似于Windows 里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/etc:所有的系统管理所需要的配置文件和子目录。
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目 录下,类似于windows下的program files目录。
/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以 及镜像文件,自己的安装别放这里。
/proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直 接访问这个目录来获取系统信息。
/srv:service缩写,该目录存放一些服务启动之后需要提取的数据。
VIM编辑器
VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜 色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。
一般模式:
以 vi 打开一个档案就直接进入默认的一般模式了。
语法 | 功能 |
yy |
复制光标当前一行
|
y (数字)y |
复制(从第几行到第几行)
|
p |
箭头移动到目的行粘贴
|
u |
撤销上一步
|
dd |
删除光标当前行
|
d(数字)d |
删除光标后(多少)行
|
x |
剪切一个字母,相当于
del
|
X |
剪切一个字母,相当于
Backspace
|
yw |
复制一个词
|
dw |
删除一个词
|
shift+6 (^) |
移动到行头
|
shift+4 ($) |
移动到行尾
|
1+shift+g |
移动到页头(数字1表示页头)
|
shift+g |
移动到页尾
|
数字 +shift+g |
移动到目标行(比如1页头)
|
编辑模式:
在一般模式中可以进行删除、复制、粘贴等的动作,但是却无法编辑文件内容。要按下i, I, o, O, a, A等任何一个字母之后才会进入编辑模式。而如果要回到一般模式时, 则须按下Esc这个按键即可。
语法(按键) | 功能 |
i |
当前光标前
|
a |
当前光标后
|
o |
当前光标行的下一行
|
I |
光标所在行最前
|
A |
光标所在行最后
|
O |
当前光标行的上一行
|
(注意区分大小写)
指令模式。
指令 | 功能 |
:w | 保存 |
:q | 退出 |
:! | 强制执行 |
/
要查找的词
|
n
查找下一个,
N
往上查找
|
:noh | 取消高亮显示 |
:set nu | 显示行号 |
:set nonu | 关闭行号 |
:%s/old/new/g
|
替换内容
/g
替换匹配到的所有内容
|
指令可以搭配使用,比如:wq!可以强制保存退出。注意符号一定是英文符号。
常用基本命令
man获取帮助消息
man是一个大而全的命令查询手册。
语法:外置命令查询方式:man (命令);内嵌命令使用方式:man -f (命令)。
help 获得 shell 内置命令的帮助信息
常用快捷键
快捷键 | 功能 |
Ctrl + c | 停止进程 |
Ctrl + l | 清屏(其实是把屏幕往下翻) |
tab | 提示 |
上下键 | 查看执行过的命令 |
pwd显示路径
功能:显示当前工作目录的绝对路径。
ls 列出目录的内容
语法:ls(选项)(目录或文件)
选项:-a :将全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来。
-l :长数据串列出,包含文件的属性与权限等等数据。
cd切换目录
跳转绝对路径:cd /xxx/xxx
跳转相对路径:cd ../xxx 此处..的意思为:返回上一级目录。
目录
mkdir:创建一个新的目录。可以用mkdir -p创建多层目录。
rmdir:删除一个空的目录
touch:创建空文件
cp:复制文件或目录。 语法:cp 源文件 目的地。 当目的地是一个已存在的目标文件时,则将覆盖该文件
rm:删除文件或目录
rm-r 递归删除目录中所有内容
rm-f 强制执行删除操作,而不提示用于进行确认。
rm-v 显示指令的详细执行过程
mv:移动文件或目录。语法:mv 源文件 目的地。
cat查看文件内容
cat:查看文件内容,从第一行开始显示。
more 文件内容分屏查看器
空白键
(space)
|
向下翻一页
|
enter | 向下翻一行 |
q |
立刻离开
more
,不再显示该文件内容
|
Ctrl+F
| 向下滚动一屏 |
Ctrl+B
|
返回上一屏
|
= |
输出当前行的行号
|
:f |
输出文件名和当前行的行号
|
less 分屏显示文件内容
空格 | 向下翻动一页 |
向上 | 向上翻动一页 |
向下 | 向下翻动一页 |
/子串 | 向下搜寻字串 |
?字串 | 向上搜寻字串 |
q | 离开less程序 |
echo:输出内容到控制台
打印,类似println
head 显示文件头部内容
head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容
语法:
head 文件:查看文件头10行内容
head -n<行数> :指定显示头部内容的行数
tail 输出文件尾部内容
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容
tail 文件 :查看文件尾部10行内容)
tail -n(行数) 文件:查看文件尾部(行数)行内容
tail -f 文件:实时追踪该文档的所有更新
history查看历史执行命令
时间日期类命令
date -d<时间字符串> 显示指定的“时间字符串”表示的时间,而非当前时间
date -s<日期时间> 设置系统日期时间
date :显示当前时间
date +%Y :显示当前年份
date +%m :显示当前月份
date +%d :显示当前是哪一天
date "+%Y-%m-%d %H:%M:%S" :显示年月日时分秒
date -d '1 days ago':显示前一天时间
date -d '-1 days ago' :显示明天时间
cal查看日历
用户管理命令
useradd 添加新用户
useradd 用户名:添加新用户
useradd -g 组名 用户名 :添加新用户到某个组
passwd设置用户密码
passwd(用户名)即可设置
id查看用户是否存在
id用户名即可查看用户是否存在
cat /etc/passwd 查看创建了哪些用户
su 切换用户
su 用户名称 :切换用户,只能获得用户的执行权限,不能获得环境变量
userdel删除用户
userdel 用户名 :删除用户但保存用户主目录
who 查看登录用户信息
whoami :显示自身用户名称
who am i :显示登录用户的用户名以及登陆时间
sudo 设置普通用户具有 root 权限
usermod 修改用户
用户组管理命令
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理,Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
groupadd(组名):新增组
groupdel(组名):删除组
groupmod -n(新组名)(老组名):修改组
cat /etc/group 查看创建了哪些组
文件权限类
chmod改变权限
chgrp改变所属组
搜索查找类
find 查找文件或者目录
find -name<查询方式> 按照指定的文件名查找模式查找文件
find -user<用户名> 查找属于指定用户名所有文件
find -size<文件大小> 按照指定的文件大小查找文件,单位为:
b —— 块(512 字节)
c —— 字节
w —— 字(2 字节)
k —— 千字节
M —— 兆字节
G —— 吉字节
locate 快速定位文件路径
grep 过滤查找及“|”管道符
管道符:“|”表示将前一个命令的处理结果输出传递给后面的命令处理。
grep 选项 查找内容 源文件。