1、Linux初步认识
1.1 系统的认识
电脑安装系统后,可以进行鼠标点击、键盘输入东西,还可以阅读看电影以及拓展安装一些软件等人机交互。
也就是说人机交互依赖于系统
。
1.2 Linux操作系统初认识
目前主流的操作系统:
- Windows 微软 比尔盖茨
- Linux
- Unix (Linux的爸爸)
开放源代码(开源):我写的代码我公开,公众于世界,比如安卓手机系统,Linux系统;同时开源不一定免费。
由Linux
发展出很多系统,比如Ubuntu
、CentOS
、Kali
、Red Hat
等。
Linux
严格来说,单指操作系统的内核。如今Linux常用来指基于Linux的完整操作系统,内核则以Linux内核
称之。
1.3 Linux用途以及千奇百怪的发行版本
- Linux是一种自由和开放源码的类Unix操作系统。Linux可以运行在服务器和其他大型平台之上,如大型计算机和超级计算机。Linux也广泛应用在嵌入式系统上,如手机、平板电脑、路由器、电视和电子游戏机等。在移动设备上广泛使用的Android操作系统就是创建在Linux内核之上。
- 通常情况下,Linux被打包成供个人计算机和服务器使用的Linux发行版,一些流行的主流Linux发布版,包括
Debian
(及其派生版本Ubantu
、Linux Mint
、Kali
)、Fedora
(及其相关版本Red Hat Enterprise Linux
、CentOS
)和openSUSE
等。
1.4 终端简介
一个terminal
窗口相当于一个屏幕,该屏幕远程连接了一个服务器,每一个terminal
可以连接到任何一个其他服务器上。
关掉terminal
相当于只是关掉了屏幕, 但远程服务器是一直开着的。
1.5 linux的文件系统:
- 根目录:
/
bin
目录(常用可执行文件命令)
etc
目录
var
目录
lib
目录(安装包, 头文件)
home
目录(所有用户的家目录)
…
特殊的:.
表示当前目录, ..
表示上层目录, ~/
表示用户的家目录
2、常用文件管理命令
2.1 路径
- 绝对路径:从根目录开始描述
- 相对路径:从当前位置开始描述的路径
.
表示当前目录..
表示上级目录~
等同于/home/user
表示用户的家目录
2.2 基本操作
ctrl + c
:取消命令,并且换行ctrl + u
:清空当前行命令tab键
:可以补全命令和文件名,如果补全不了快速按两下tab
键,可以显示备选选项方向键
:回到上一个命令
2.3 基本命令
ls
(list files):列出当前目录下的所有文件,蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件ls -l
:展示详细信息ls -h
:人性化的显示详细信息ls -a
:显示所有的文件(包括被隐藏的文件,所有被隐藏的文件都是以.
开头的),ll
等同于ls -a
ls -A
:显示所有的文件,但不显示当前目录和上级目录(.
和..
)
pwd
(print work directory):打印当前路径,显示出当前工作目录的绝对路径cd XXX
(change directory):进入XXX
目录下cd
默认返回家目录cd ..
返回上级目录cd -
返回上一次操作的目录
cp XXX YYY
(copy file):将XXX
文件复制成YYY
,XXX
和YYY
可以是一个路径,比如../dir_c/a.txt
,表示上层目录下的dir_c
文件夹下的文件a.txt
cp a/tmp.txt b
:将a
文件夹中的tmp.txt
复制到b
文件夹中cp a/tmp.txt b/tmp1.txt
:把a
文件夹下的tmp.txt
复制到b
文件夹并且重命名为tmp1.txt
cp a b -r
:把文件夹a
复制到文件夹b
中,-r
表示若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件
mkdir XXX
(make directory):创建目录XXX
,该命令用于创建目录mkdir a
:创建名为a
的子目录mkdir -p a/b
:在工作目录下的a
目录中,创建一个名为b
的子目录,若a
目录原本不存在,则建立一个。(注意⚠️:在本例若不加-p
参数,且原本a
目录不存在,可能产生错误)
rm XXX
(remove):该命令删除一个文件或者目录- 语法:
rm [options] name
- 参数:
-i
删除前逐一确认;
-f
即使源文件属性设为只读,也可强制删除,无需确认;
-r
将目录下所有的子目录和文件都逐一删除 - 示例:
rm -r homework
删除目录homework
;
rm -r *
删除当前目录下的所有文件及目录
rm /* -rf
删除所有文件 - 注意⚠️:文件一旦通过
rm
命令删除,则无法恢复,所有必须格外小心地使用该命令
- 语法:
mv XXX YYY
(move file):将XXX
文件移动到YYY
,和cp
命令一样,XXX
和YYY
可以是一个路径;该命令也可用于重命名文件- 示例:
mv a/tmp.txt b/
:将文件夹a
下的tmp.txt
文件移动到b
mv a/tmp.txt b/tmp2.txt
:将文件夹a
下的tmp.txt
文件移动到b
并且重命名为tmp2.txt
mv tmp2.txt tmp.txt
:将tmp2.txt
重命名为tmp.txt
- 示例:
touch XXX
:创建一个文件XXX
cat XXX
(concatenate):展示文件XXX
中的内容,该命令用于连接文件并打印到标准输出设备上cat a/tmp.cpp
:查看tmp.cpp
文件中的内容
cp与mv区别
:cp
(复制+粘贴),mv
(剪切+粘贴)mkdir与touch区别
:mkdir
(创建文件夹),touch
(创建文件)history
: 显示历史输入指令;tree
:以树形显示文件目录结构find
:用于在指定目录下查找文件和目录,它可以使用不同的选项来过滤和限制查找的结果- 复制文本:
- windows/Linux下:
Ctrl + insert
- Mac下:
command + c
- windows/Linux下:
- 粘贴文本:
- windows/Linux下:
Shift + insert
- Mac下:
command + v
- windows/Linux下: