2024-07-04 20:46:42 +08:00
|
|
|
|
# Linux 常识
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
当你照着上面的教程,费尽千辛万苦,历经千难万险,终于安装上 Rocky Linux 后,你肯定会有一个问题:我 C 盘呢?
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
其实,Linux 的很多逻辑以及文件的组织结构都是与 Windows 大不相同的,接下来,我们就一起了解一下。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
> 注意,以下操作,若无特殊说明,输入命令均在终端(Terminal)下操作,可以按下 Ctrl-Alt-T 呼出。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
## Linux 路径的格式
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
> 注:文件夹(Folder)和目录(Directory)实际上是一个东西。只不过,我们在图形界面下更习惯叫文件夹,终端命令行下更喜欢叫目录。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
Linux 中目录的分隔符是`/`,而非 Windows 中的`\\`。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
Linux 中,每个文件夹下,都有两个特殊的目录,就是`.`和`..`
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
1. `.` 代表当前所在的文件夹
|
|
|
|
|
2. `..` 代表上一级文件夹,而 `/` 的上级文件夹就是它自己
|
|
|
|
|
|
|
|
|
|
> 这块似乎有一点不太好懂,我们通过实际的例子解释一下:
|
|
|
|
|
|
|
|
|
|
假设我们当现在目录`/foo/bar`下,那么`/foo/bar/.`就等同于`/foo/bar`,`/foo/bar/..`,就等同于`/foo`
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
如果一个路径以`/`开头,那代表这个目录是从根目录开始的,根目录就相当于 Windows 上的 C 盘,是存放系统的位置。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
> 注:在 Windows 下也有一个隐藏的根目录,不过我们几乎访问不到也访问不了
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
而你所看到的主文件夹(或者是用户目录),位于 `/home/你的用户名`(Linux 中 root 用户比较特殊,就是`/root`),相当于 `C:\Users\你的用户名`(MacOS:`/Users/你的用户名`)。在这里你可以放置你的个人文件和代码。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
> 实际上,`/`只是一块硬盘的挂载点,后面会讲到
|
|
|
|
|
|
|
|
|
|
## 文件与目录的基本操作
|
|
|
|
|
|
|
|
|
|
### `ls` 列出文件
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
`ls`,顾名思义,就是 list,列出当前目录下的文件,他的基本使用方法也很简单:
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
ls <目录>
|
|
|
|
|
```
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
这个命令就会列出那个目录下的文件。如果没有参数,ls 默认列出当前目录下的文件。你应该还能看见颜色,不同颜色就代表了文件(夹)的不同类型。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
`ls` 还有一些其它的参数,比如输入 `ls -al` 就可以看见纵向排列的文件详细信息了,输入文件名就可以筛选出那个文件夹内/文件本身。
|
|
|
|
|
|
|
|
|
|
### `pwd` 打印工作目录
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
`pwd`,名字拆解出来,就是 print work directory。也就是打印工作目录,这个命令可以让我们快速了解到我们当前所在的目录。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
> 工作目录(work directory),可以简单的理解为用户当前所在的目录,在以后讲解 shell 的时候会进一步讲解这些概念。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
使用方法也很简单:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
pwd
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
这样就会输出当前的工作目录。
|
|
|
|
|
|
|
|
|
|
### `cd` 切换目录
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
cd,更好理解了,就是 change directory,切换目录的意思。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
使用方法更简单了:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
cd <目录>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
这样,就会把当前的工作目录切换到指定的目录了。
|
|
|
|
|
|
|
|
|
|
### `mkdir` 新建文件夹
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
我们刚学习使用 Windows 时,除了开机,第一件事应该就是新建文件夹了。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
这个命令的意思就是字面上的,make directory,新建文件夹。
|
|
|
|
|
|
|
|
|
|
你可以使用下面的命令:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
mkdir <目录名>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
另外,如果你想一次性创建多层目录,那么可以使用 `mkdir -p <多层目录>`,例如 `mkdir -p learn/linux/study`。
|
|
|
|
|
|
|
|
|
|
### `mv` 移动文件
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
那我们的重命名,剪切,复制,粘贴去哪了呢?在 Linux 命令行中,其实没有剪切。
|
2024-07-04 20:46:42 +08:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
mv <你想移动的目录> <目标或新的名字>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
我们可以使用上面的命令移动或者重命名一个目录(是的,它们是一个命令)。
|
|
|
|
|
|
|
|
|
|
> 在同一磁盘内移动速度很快,但是跨磁盘就不一定了
|
|
|
|
|
|
|
|
|
|
### `cp` 复制文件
|
|
|
|
|
|
|
|
|
|
而复制也是一个道理:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
cp <你想复制的文件或目录> <新文件或目录的名字>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### `rm` 删除文件
|
|
|
|
|
|
|
|
|
|
都有复制了,怎么能没有删除呢?
|
|
|
|
|
|
|
|
|
|
> 删除危险性较高,不要删除根目录或者其它重要目录!回车前再三确认!
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
rm <你想删除的文件>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
另外,删除文件夹的操作有点不一样:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
rm -r <你想删除的文件夹>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
在`r`后面加上`f`就是强制删除了,而 `rm -rf /*` 就是强制删除根目录下所有的文件。以后看到这串命令不要被骗了!
|
|
|
|
|
|
|
|
|
|
> 如果你真的想尝试,那么请一定在虚拟机下!搞坏系统作者可不负责!
|
2024-07-06 21:34:13 +08:00
|
|
|
|
|
|
|
|
|
### `poweroff`关机
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
很多同学刚使用 Linux 的时候,最大的问题就是:怎么关机?
|
2024-07-06 21:34:13 +08:00
|
|
|
|
|
|
|
|
|
实际上关机很简单,只需要键入:
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
sudo poweroff
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
回车执行之后会提示你输入密码,直接输入就可以了,输入的时候是没有回显的,不用担心,输入完直接回车即可。
|
|
|
|
|
|
2024-07-07 08:22:53 +08:00
|
|
|
|
> 关于`sudo`是什么意思,这个在以后我们讲解权限的时候会提到,你现在就理解为是用来获取系统的最高权限的意思就 ok 了。
|