Unix / Linux - 快速指南

欢迎,有抱负的程序员们!作为一名经验丰富的计算机科学教师,我很高兴能引导你们进入Unix和Linux这个迷人的世界。如果你是编程新手,不用担心——我们将从基础开始,逐步深入学习。让我们一起开始这段激动人心的旅程吧!

Unix / Linux - Quick Guide

1. 什么是Unix?

Unix是一个在20世纪60年代开发的操作系统,并自那以来成为许多现代操作系统的基石,包括Linux。它以其稳定性、灵活性和强大的命令行界面而闻名。

1.1 Unix架构

Unix遵循分层架构,包括以下内容:

  1. 内核(系统的核心)
  2. 命令行界面(用户与内核之间的接口)
  3. 实用程序和应用

可以把Unix想象成三层蛋糕:内核是底层,命令行界面是糖霜,实用程序是美味的配料!

2. Unix/Linux入门

2.1 命令行界面(CLI)

Unix/Linux系统主要使用命令行界面。不要被吓到——就像学习新语言一样,很快你就能流利使用了!

首先,打开你的终端。你将看到类似这样的内容:

username@hostname:~$

这是你的命令提示符,等待你的指令!

2.2 基本命令

让我们从一些简单的命令开始:

命令 描述 示例
pwd 打印工作目录 pwd
ls 列出文件和目录 ls
cd 改变目录 cd Documents
mkdir 创建目录 mkdir MyFolder
touch 创建一个空文件 touch myfile.txt

让我们试一试!

$ pwd
/home/username

$ ls
Documents  Downloads  Music  Pictures

$ mkdir MyProject

$ cd MyProject

$ touch hello.txt

$ ls
hello.txt

每个命令都有特定的功能。pwd 显示你的位置,ls 列出你周围的内容,mkdir 创建一个新文件夹,cd 将你移动到不同的位置,touch 创建一个新文件。

3. 文件管理

3.1 创建和编辑文件

让我们使用 nano 编辑器创建一个简单的文本文件:

$ nano hello.txt

这将打开nano编辑器。输入一些文本:

Hello, Unix world!
This is my first file.

按 Ctrl+X,然后按 Y,再按 Enter 保存并退出。

3.2 查看文件内容

要查看你的文件内容:

$ cat hello.txt
Hello, Unix world!
This is my first file.

cat 命令显示整个文件内容。

3.3 复制、移动和删除文件

以下是一个快速参考表:

命令 描述 示例
cp 复制文件或目录 cp hello.txt hello_copy.txt
mv 移动或重命名文件 mv hello.txt greetings.txt
rm 删除文件或目录 rm hello_copy.txt

让我们试一试:

$ cp hello.txt hello_backup.txt
$ ls
hello.txt  hello_backup.txt

$ mv hello.txt greetings.txt
$ ls
greetings.txt  hello_backup.txt

$ rm hello_backup.txt
$ ls
greetings.txt

记住,能力越大,责任越大。使用 rm 命令时要小心——命令行中没有回收站!

4. 目录管理

4.1 导航目录

我们已经看到了使用 cd 来改变目录。以下是一些导航技巧:

  • cd .. 向上移动一个目录
  • cd ~ 带你到你的家目录
  • cd / 去到根目录
$ pwd
/home/username/MyProject

$ cd ..
$ pwd
/home/username

$ cd ~
$ pwd
/home/username

$ cd /
$ pwd
/

4.2 创建和删除目录

我们已经看到了使用 mkdir 创建目录。要删除它们,请使用 rmdir

$ mkdir TestDir
$ ls
TestDir  MyProject

$ rmdir TestDir
$ ls
MyProject

注意:rmdir 只对空目录有效。对于非空目录,你需要使用 rm -r,但请非常小心使用!

5. 文件权限

Unix/Linux系统有一个强大的权限系统。每个文件和目录都有对拥有者、组和其它人的权限。

5.1 理解权限

使用 ls -l 查看详细的文件信息,包括权限:

$ ls -l
-rw-rw-r-- 1 username username 35 Jun 15 10:30 greetings.txt

权限由 -rw-rw-r-- 表示:

  • 第一个字符表示文件类型(- 表示普通文件,d 表示目录)
  • 接下来的三个字符是拥有者权限
  • 接下来的三个是组权限
  • 最后三个是其它人的权限

每组三个字符代表读(r)、写(w)和执行(x)权限。

5.2 改变权限

使用 chmod 命令来改变权限:

$ chmod 644 greetings.txt
$ ls -l greetings.txt
-rw-r--r-- 1 username username 35 Jun 15 10:30 greetings.txt

在这里,644是一个八进制表示:

  • 6(二进制中的110)意味着拥有者有读和写的权限
  • 4(二进制中的100)意味着组和其它人只有读权限

结论

恭喜!你已经迈出了进入Unix/Linux世界的第一步。我们涵盖了文件系统导航、文件和目录管理以及理解权限的基础。记住,熟能生巧——你越多使用这些命令,就会越熟练。

在我们接下来的课程中,我们将更深入地学习更高级的主题,如shell脚本、进程管理和网络工具。在此之前,继续探索,并不要害怕在你的Unix/Linux游乐场中实验!

Credits: Image by storyset