命令格式:
命令
命令 参数
命令 对象
命令 参数 对象
基本命令
命令 | 作用 |
---|---|
pwd | 查看当前所在的路径 |
ls | 查看当前目录中的内容 |
ls -l | 查看详细的信息 |
ls --help | 如果忘记了命令后的参数就用这个 |
cd | 切换目录 |
cd / | 直接切换到根目录 |
cd ~ | 切换到当前用户的家目录 |
cd … | 切换到上一级目录 |
cd - | 切换到上一个工作目录 |
touch | 创建文件 创建的是空文件,里面是没有任何内容的 |
mkdir | 创建目录 同时可以创建一个或多个目录 |
mkdir -p | 创建多层级的目录 |
cp | 复制文件 cp 想要复制的文件 目的地 也可以对这个文件重命名 cp 想要复制的文件 目的地/想要修改的名字 |
mv | 移动 mv 想要移动的文件 目的地 重命名也是在目的地后面加斜杠就好了 |
cat | 查看小文件 cat 想要查看的文件路径 |
more ,less | 查看大一些的文件 |
rm | 删除 rm 想要删除的文件路径 |
rm -f | 强制删除 这样只能删除文件,目录不能直接这样进行删除 |
rm -r | 递归删除,先把目录里的东西都删掉,再把目录删除 |
rm -rf | 强制删除目录 |
vim编辑器
编辑模式
i:在光标前插入
I:在光标行行首插入
o:光标所在行下一行插入
O:光标所在行上一行插入 不是在上一行的文字上进行插入,是另起一行插入的意思
a:光标后插入 在原本的光标后面进行插入的
A:光标行行尾插入
esc:退出编辑模式
命令行模式
命令 | 作用 |
---|---|
:q | 退出 |
:wq | 保存退出 |
:q! | 强制退出 |
:set nu | 显示行号 |
:set nonu | 不显示 |
移动光标:
命令 | 作用 |
---|---|
gg | 移动到第一行 |
G | 移动到最后一行 |
*gg | 移动到第*行 |
删除:
命令 | 作用 |
---|---|
dd | 删除当前光标所在的一行 |
3dd | 一共删除3行,光标行和下面2行 |
复制:
命令 | 作用 |
---|---|
yy | 复制一行 |
5yy | 复制五行,光标行和下面四行 |
粘贴:
命令 | 作用 |
---|---|
p | 放在光标后面 |
P | 放在光标前面 |
查找关键字:
命令 | 作用 |
---|---|
/关键字 | 会区分大小写 |
/关键字\ | 不会区分大小写 |
替换:
命令 | 作用 |
---|---|
:s/关键字/想要替换的新字符串 | 替换一行的第一个关键字 |
:s/关键字/新字符串/g | 对光标行所有关键字进行替换 |
:%s/关键字/新字符串 | 对全文每行第一个关键字进行替换 |
:%s/关键字/新字符串/g | 对全文所有关键字替换 |
重定向:
可以将某一命令的结果写到一个文件中去。或者把一个文件的内容写入到另一个文件中去。
命令 | 作用 |
---|---|
> | 先清空文件原有内容,再把我输出的结果写进去 |
>> | 追加,原本内容会保存下来 |
文件和目录的权限
Linux是一个多用户的操作系统,如果没有权限的话是非常危险的。
权限的对象分为
- 属主:文件的所有者,默认所有者是它的创建者。可以改变一个文件的属主用户,但是必须要root用户来实施。或者说作为一个创建者,我的文件的所有权我可以进行转让,但是这个转让手续必须由root来办。
- 属组:一群用户的集合。比如一个班级,每一个人都是一个用户,那么大家现都属于班级这个属组。这个属组的名称就是班级的名称。对于属组的权限,给某一属组标注了一个权限,让他可以读这个文件,那就是说这个组里的所有用户都可以读这个文件。
- 其他人
这三个种类就是囊括了所有人,但是root是不属于这个里面的
文件类型:
比如这样一个文件
- rw-|r–|r–. 1 root root 0 11月 30 11:47 hello.txt~
第一个字符代表文件类型
d:目录
-:文件
l :链接
链接可以分为:
- 软链接:符号的链接,新建的文件以路径的形式表示另外一个文件。可以理解为快捷方式,也是创建了一个新的文件,不过这种文件是一种链接的文件。如果源文件删掉了,软链接的文件也就没有了。
命令:
ln -s 相链接的文件名 创建的文件名 - 硬链接:把两个独立的文件联系到一起,新建的文件相当于和它联系的那个文件的别名。如果原文件删掉了,新建的文件也还是可以使用的,内容是不会改变的。
命令:
ln 相链接的文件名 创建的文件名
1:代表链接的数目,就是说它只有一个硬链接
第一个root:属主
第二个root:属组
0:文件大小
11月30:创建日期
11:47:创建时间
hello.text:文件名
rw-|r–|r–代表他的权限,分为三个部分,前面是属主的权限,中间是属组的权限,后面是其他人的权限。
r,w,x
权限 | 对文件的影响 | 对目录的影响 |
---|---|---|
r(读取) | 可以读取文件的内容 | 可以列出目录的内容(文件名) |
w(写入) | 可以更改文件的内容 | 可以创建或删除目录中的任一文件 |
x(执行) | 可以作为命令执行文件 | 可以访问目录的内容(取决于目录中文件的权限) |
改变权限
改变属主和属组的权限
单独改属主
chown 想要改的属主 要改的文件名
单独改属组
chown :想要改的属组 要改的文件名
同时修改属主和属组
chown 想要改的属主:属组 要改的文件名
单独改属组
chgrp 想要改的属组 要改的文件名
改文件里的权限
-
chmod
u:文件属主
g:文件属组
o:其他人
a:所有人
chmod u+x 文件名 //给文件属主加上执行权限
chmod u=rwx 文件名 //给文件属主赋予读,写,执行的权限 -
也可以用八进制数值来改变文件权限:
r=4
w=2
x=1
例如:- chmod 711 文件名
属主:读,写,执行 (r+w+x)
属组:只执行 (x)
其他人:只执行(x) - chomd 653 文件名
属主:读,写(r+w)
属组:读,执行(r+x)
其他人:写,执行(w+x)
- chmod 711 文件名