Linux简介
和Windows操作系统软件一样,Linux也是一个操作系统软件,并且它是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX(可移植操作系统接口) 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。要使用Linux可以通过安装CentOS镜像,然后通过VMware虚拟机软件打开;或者购买云服务器,通过XShell工具远程连接使用。
目录管理命令
ls命令:查看当前目录下的文件各目录
ls -a : 可以查看当前目录下的隐藏文件
ls -ll : 可以查看当前目录下的所有不隐藏文件
ls -al : 可以查看当前目录下的所有文件
cd命令:跳转目录
cd : 跳转到用户目录下
cd /xxx : 跳转到xxx目录下
cd .. : 跳转到上一级目录
[root@iZbp12mphokxxqnq0q4eoiZ /]# ls
bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
[root@iZbp12mphokxxqnq0q4eoiZ ~]# cd /home
[root@iZbp12mphokxxqnq0q4eoiZ home]# cd ..
[root@iZbp12mphokxxqnq0q4eoiZ /]# ls /
bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
pwd命令:查看当前所在路径
[root@iZbp12mphokxxqnq0q4eoiZ /]# cd /home
[root@iZbp12mphokxxqnq0q4eoiZ home]# pwd
/home
mkdir命令:创建一个目录
[root@iZbp12mphokxxqnq0q4eoiZ home]# mkdir zhu #创建目录
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# mkdir xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
xiaozhu zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# mkdir -p hhh/xiaozhu/abc #创建层级目录,递归目录
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
hhh xiaozhu zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# cd hhh
[root@iZbp12mphokxxqnq0q4eoiZ hhh]# ls
xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ hhh]# cd xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# ls
abc
rmdir命令:删除目录
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls #删除目录
hhh xiaozhu zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# rmdir zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
hhh xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# rmdir -p hhh/xiaozhu/abc #删除层级目录,递归目录
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
xiaozhu
cp命令:复制文件或者目录到指定目录中
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
xiaozhu zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# > abc.txt #创建一个abc.txt的文件
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
abc.txt xiaozhu zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# cp abc.txt xiaozhu #将abc.txt文件复制到xiaozhu目录下
[root@iZbp12mphokxxqnq0q4eoiZ home]# cd xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# ls
abc.txt
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# cd ..
[root@iZbp12mphokxxqnq0q4eoiZ home]# cp -r zhu xiaozhu #复制目录到指定位置要再前面加一个-r
[root@iZbp12mphokxxqnq0q4eoiZ home]# cd xiaozhu
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# ls
abc.txt zhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# cp abc.txt xiaozhu #如果目录中有了要复制过去的文件,他首先会问你是否覆盖,如果输入y就表示覆盖,n表示不覆盖
cp: overwrite 'xiaozhu/abc.txt'? y
rm命令:移除文件或者目录!
-f 忽略不存在的文件,不会出现警告,强制删除!
-r 递归删除目录!
-i 互动,删除前询问是否删除
rm -rf / #系统中所有的文件就被删除了,删库跑路!(危险操作)
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# ls
abc.txt zhu
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# rm -rf zhu
[root@iZbp12mphokxxqnq0q4eoiZ xiaozhu]# ls
abc.txt
mv命令:移动文件或者目录,也可以用来修改目录名
-f 强制移动
-u 只替换已经更新过的文件
[root@iZbp12mphokxxqnq0q4eoiZ home]# mv abc.txt xiaozhu/
mv: overwrite 'xiaozhu/abc.txt'? y
[root@iZbp12mphokxxqnq0q4eoiZ home]# mv zhu zhuzhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
xiaozhu zhuzhu
基本属性
文件或目录的属性都有十个字母,第一个表示类型,后面九个分别表示不同用户的读写执行的权限

实例中,boot文件的第一个属性用“d”表示,表示该文件是一个目录文件
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等;
-
当为[ d ]则目录 -
当为[ – ] 则是文件 -
若是[ I ]则表示为链接文档 -
若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置); -
若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)
接下来的字符中,以三个为一组,且均为[ rwx ]的三个参数的组合
其中,[ r ]代表可读(read),[ w ]代表可写(write),[ x ]代表可执行(execute)
这三个位置如果没有对应的权限,在对应的位置就会出现[ – ]
修改文件属性
1、chgrp:更改文件属组
chgrp [-R] 属组名 文件名
-R : 递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会改变
2、chown:更改文件属主,也可以同时更改文件属组
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
3、chmod:更改文件9个属性
chomd [-R] xyz 文件或目录
Linux文件的基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限
这九个权限是三个三个为一组,其中我们可以用数字来表示这三个权限
r:4 w:2 x:1
在修改文件的属性的时候,可以直接使用数字相加进行更改,如6就代表该文件可以执行读写操作,如果为7就表示该文件可以执行读写执行操作
如:
-
owner = rwx = 4+2+1 = 7 -
group = rwx = 4+2+1 = 7 -
others = — = 0+0+0 = 0
img
可以看到abc.txt中我们将三个身份的权限都设置了读写执行,zhuzhu文件的owner和group设置了读写执行权限,others没有权限
文件内容查看
Linux系统中使用以下命令来查看文件的内容:
-
cat 由第一行开始显示文件内容

-
tac 从最后一行开始显示,倒着显示文件内容

-
nl 显示的时候,顺道输出行号!

-
more 一页一页的显示文件内容(如果需要查看下一页内容的话,只需要按空格键即可)

-
less 与 more 类似,但是比more更好的是,它可以往前翻页!(如果需要查看下一页内容的话,可以按空格或者右边键盘的上下键即可,并且如果需要退出的话按下q > quit即可)

-
head只看头几行(在head后面添加-n 行号即可查看文件开头的指定行数的内容)

-
tail只看尾巴几行(在tail后面添加-n 行号即可查看文件末尾的指定行数的内容)

可以使用man [命令]来查看各个命令的使用文档,如 : man cp

-
在Windows中可以通过ping来查看ip信息;在Linux中则需要通过ifconfig来查看ip信息

链接
拓展:Linux链接的概念
Linux的链接分为两种:硬链接、软连接!
硬链接:A…B,假设B是A的硬链接,那么他们两个指向了同一个文件!允许一个文件有多个路径,这样用户就可以使用硬链接到一些重要文件上,防止误删!硬链接只能应用在文件上面,不能对目录进行硬链接处理!
软链接:类似Windows下的快捷方式,删除了源文件,快捷方式也访问不了了
创建链接方式是ln命令,默认是创建硬链接,如果要创建软链接的话只需要在ln命令后面加上-s即可
touch 命令创建文件
echo 输入字符串,也可以输入到文件中
[root@iZbp12mphokxxqnq0q4eoiZ home]# touch f1 #创建f1文件
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
abc.txt f1 xiaozhu zhuzhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# ln f1 f2 #给f1创建硬链接f2
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
abc.txt f1 f2 xiaozhu zhuzhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# ln -s f1 f3 #给f1创建软连接f3
[root@iZbp12mphokxxqnq0q4eoiZ home]# ls
abc.txt f1 f2 f3 xiaozhu zhuzhu
[root@iZbp12mphokxxqnq0q4eoiZ home]# echo "I love you" >> f1 #给f1文件中添加内容
[root@iZbp12mphokxxqnq0q4eoiZ home]# cat f1
I love you
[root@iZbp12mphokxxqnq0q4eoiZ home]# cat f2
I love you
[root@iZbp12mphokxxqnq0q4eoiZ home]# cat f3
I love you
[root@iZbp12mphokxxqnq0q4eoiZ home]# rm -rf f1 #删除f1文件
[root@iZbp12mphokxxqnq0q4eoiZ home]# cat f2
I love you
[root@iZbp12mphokxxqnq0q4eoiZ home]# cat f3
cat: f3: No such file or directory #f1文件被删除之后,软连接(快捷方式)
Vim编辑器
编辑一个文件,如果这个文件没有创建,就会自动帮你创建并且编辑,如果创建了,就编辑原来的文件
三种使用模式
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。这三种模式的作用分别是:
命令模式:
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
以下是常用的几个命令:
-
i 切换到输入模式,以输入字符。 -
x 删除当前光标所在处的字符。 -
: 切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。
命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
输入模式:
在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
-
字符按键以及Shift组合,输入字符 -
ENTER,回车键,换行 -
BACK SPACE,退格键,删除光标前一个字符 -
DEL,删除键,删除光标后一个字符 -
方向键,在文本中移动光标 -
HOME/END,移动光标到行首/行尾 -
Page Up/Page Down,上/下翻页 -
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线 -
ESC,退出输入模式,切换到命令模式
底线命令模式:
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
-
q 退出程序 -
w 保存文件
Vim 按键说明
除了上面简易范例的 i, Esc, :wq 之外,其实 vim 还有非常多的按键可以使用。
移动光标的方法 | |
---|---|
h 或 向左箭头键(←) | 光标向左移动一个字符 |
j 或 向下箭头键(↓) | 光标向下移动一个字符 |
k 或 向上箭头键(↑) | 光标向上移动一个字符 |
l 或 向右箭头键(→) | 光标向右移动一个字符 |
[Ctrl] + [f] | 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用) |
[Ctrl] + [b] | 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用) |
[Ctrl] + [d] | 屏幕『向下』移动半页 |
[Ctrl] + [u] | 屏幕『向上』移动半页 |
+ | 光标移动到非空格符的下一行 |
– | 光标移动到非空格符的上一行 |
n< space> | 那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。 |
0 或功能键[Home] | 这是数字『 0 』:移动到这一行的最前面字符处 (常用) |
$ 或功能键[End] | 移动到这一行的最后面字符处(常用) |
H | 光标移动到这个屏幕的最上方那一行的第一个字符 |
M | 光标移动到这个屏幕的中央那一行的第一个字符 |
L | 光标移动到这个屏幕的最下方那一行的第一个字符 |
n< Enter> | n 为数字。光标向下移动 n 行(常用) |
搜索替换 | |
---|---|
/word | 向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可!(常用) |
?word | 向光标之上寻找一个字符串名称为 word 的字符串。 |
n | 这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串! |
N | 这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。 |
删除、复制与粘贴 | |
---|---|
x, X | 在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用) |
nx | n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。 |
dd | 删除游标所在的那一整行(常用) |
ndd | n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用) |
原文始发于微信公众号(爱吃薯片):Linux基本命令
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/25995.html