Linux 基础(从环境搭建到基础命令)

简介: Linux 基础(从环境搭建到基础命令)

前言

一般来说,当我们写好一个网站,是需要部署到服务器上的。而服务器层面,最主流的操作系统就是 Linux。本章就重点来总结一下 Linux 环境搭建 以及最常用的一些 命令

一、Linux环境搭建

1、购买云服务器

对于Linux来说,有多种环境搭建方式,但是对比多种方式,使用云服务器是最优选择。我们可以先购买一个云服务器(阿里云、……)然后将Linux环境部署到云服务器上即可。并且当我们购买了云服务器之后,会附带一个外网 IP,这意味着此时我们发布的网站,可以被别人访问到。这就和发布一个正式的网站没有任何区别,也就能让我们自己写的程序真的去给别人去使用。

2、Linux环境搭建

下面以为例,展示 Linux 环境搭建:这里你可能会发现在系统镜像这里选择的并不是 Linux 而是 CentOS。其实 Linux 更准确的来说是一个操作系统内核,而一个完整的系统是由 操作系统内核 和 配套的应用程序组成的。因此很多组织基于Linux内核搭配不同的应用程序,开发出了不同的操作系统,也叫发行版。这里的 CentOS 就是基于 Linux 内核构建的一个发行版。

注意:购买云服务器后记得重置一个复杂的密码,防止不法入侵。

3、使用终端软件连接到 Linux

终端软件是一类工具软件,可以和远程的主机建立网络连接,从而对远程主机进行一些操作。对于这里来说,此时我们购买的远程云服务器就是我们要连接的对象。


终端软件也有很多,这里以 XShell 为例。在 XShell 中,我们通常的做法是将连接以会话的形式保存,下次连接时直接点击会话即可。



连接成功后,我们会在终端界面看到如下信息:



4、拓展:XShell常用快捷键

复制: ctrl + insert

粘贴: shift + insert

自动补全:使用 tab 键。我们敲的所有的 Linux 命令,,都可以使用 tab 键来尝试补全,加快效率。

取消命令:如果命令或者目录敲错了, 可以 ctrl + c 取消当前的命令.

锁住终端:ctrl + s

解锁终端:ctrl + q

清屏:ctrl + l

退出:ctrl + d

二、Linnx 目录结构

在 Linux 系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。并且 Linux 的常见命令中,很大一部分就是关于文件目录的操作。所以在介绍具体的 Linux 命令之前下面我们简单熟悉一下 Linux 中的目录结构:


Linux 中的目录结构是一种层次化的文件系统结构,以根目录 / 为起点,向下分为多个子目录。以下是常见 Linux目录结构及其用途:

  1. /(根目录): 整个文件系统的起始点。
  2. /bin:存放可执行的二进制文件(命令和系统工具)。
  3. /boot:存放启动相关的文件,如内核和引导加载器。
  4. /dev:用于设备文件的挂载点,包括硬件设备和外部设备。
  5. /etc:存放系统配置文件,如网络配置、用户配置等。
  6. /home:用户的主目录,每个用户都有一个独立的子目录。
  7. /lib:存放系统共享的库文件,许多程序需要依赖这些库文件。
  8. /media:可移动媒体设备的挂载点,如光盘、USB 等外部存储设备。
  9. /mnt:用于临时挂载其他文件系统或外部设备。
  10. /opt:第三方软件的安装目录,通常将其放在 /opt 下。
  11. /proc:虚拟文件系统,提供关于当前内核状态的信息。
  12. /root:超级用户(root)的主目录。
  13. /sbin:存放只有管理员才能执行的系统命令。
  14. /srv:存放服务相关的数据和文件。
  15. /tmp:临时目录,用于存放临时文件。
  16. /usr:存放用户和系统共享的应用程序和文件资源。
  17. /var:存放经常变化的文件,如日志文件、数据库文件等。


在 Linux 中,同样可以使用 绝对路径相对路径 来访问文件和目录:


1、绝对路径:绝对路径是从根目录 / 开始的完整路径。它指定了文件或目录在文件系统中的确切位置。绝对路径以斜杠 / 开头,例如 /home/user/file.txt。无论当前所在的工作目录在哪里,绝对路径都能准确地指向特定的文件或目录。


2、相对路径:相对路径是相对于当前工作目录的路径。相对路径不以斜杠 / 开头,而是从当前目录开始的路径。常用的相对路径符号包括 .(代表当前目录,可省略)和 ..(代表上级目录)。例如,假设当前工作目录是 /home/user/,则相对路径 ./file.txt 指的是当前目录下的 file.txt 文件;../docs/document.txt 指的是上级目录下的 docs/document.txt 文件。


三、Linux 常用命令(严格区分大小写)


1、ls 命令

ls 目录:简单地列出当前目录下的文件和子目录(不包括隐藏文件)。

ls -l 目录:以长格式显示文件和目录的详细信息,包括权限、所有者、大小、修改日期等。通常简写为 ll

ls -R 目录:递归地显示当前目录下的所有文件和子目录,包括子目录中的文件和子目录。

2、cd 命令

cd 目录名:将当前工作目录改变到指定的目录下。

3、pwd 命令

pwd:显示用户当前所在的目录


4、mkdir 命令

使用示例:

创建一个单级目录:

mkdir mydir

创建多级目录:

mkdir -p mydir/subdir/subsubdir


5、touch 命令

touch 文件/目录:命令参数可更改文件或目录的日期时间,包括存取时间和更改时间。或者新建一个不存在的文件


使用示例:

创建一个不存在的文件

touch file.txt

6、cat 命令

cat 文件:查看目标文件的内容


7、echo 命令

echo :用于在终端输出文本或变量的内容。它可以直接将指定的文本打印到标准输出(终端)上。


使用示例:

输出文本:

echo "Hello, World!"

输出变量的值:

name="Alice"
echo $name

将输出重定向到文件中:

echo "HelloLinux" > file.txt

这行命令会将文本 “HelloLinux” 写入到名为 file.txt 的文件中。如果文件已存在,原有内容将被覆盖,如果文件不存在,会自动创建一个新的文件 file.txt 并将输出重定向到该文件中。如果想追加内容到文件末尾,可以使用 >> 操作符,例如 echo "More content" >> file.txt。

8、vim 命令

vim 是一个强大的文本编辑器。也是Linux自带的文本编辑器,相当于 windows 上的记事本。

vim 的基本使用


1、打开文件: vim [文件路径]


2、编辑文件: 默认情况下是普通模式,普通模式下键盘的按键表示一些特殊功能的快捷键,使用 i 键可以进入到插入模式就可以像记事本一样正常编辑了。


3、保存退出: 在插入模式下不能保存文件,需要先按下 Esc 回到普通模式,然后使用 :wq 同时执行保存和退出。


PS:使用vim编辑文件时,如果该文件不存在,Vim 将会创建一个新的空文件并打开它。


9、rm 命令

rm 文件/目录: 删除文件或目录。

删除是一个非常危险的操作,使用时一定要慎重!!!

使用示例:

删除文件,需要确认:

rm file.txt

强制删除文件,不需要确认:

rm -f file.txt

递归删除目录及其所有内容,需要确认:

rm -r mydir

递归删除目录及其所有内容,强制删除,不需要确认:

rm -rf mydir2

强制删除当前目录中的所有文件

rm -rf *

10、cp 命令

cp 源文件或目录 目标文件或目录: 复制文件或目录到指定位置。

PS:使用 cp 命令需要注意的是:如果拷贝的目标文件已经存在,会发生覆盖的情况。

使用示例:

复制文件到目标位置(并重命名):

cp file.txt file2.txt

复制目录到目标位置:

cp -r mydir mydir2

11、mv 命令

mv 源文件或目录 目标文件或目录:用于移动文件和目录,也可以用于更改文件或目录的名称。


PS1:相较于 cp 来说 mv 底层的效率是更高的,mv 操作就相当于修改一下“路径”这个属性。


PS2:使用 mv 同样需要注意:如果移动的位置存在同名文件,会发生覆盖的情况。


PS3:由于Linux中没有回收站的概念,并且 rm 操作又是非常危险的,所以删除某个文件或目录时,可以使用mv将其移动到一个单独的目录中,这个单独的目录就可以假想为一个回收站。

使用示例

文件重命名

mv file.txt newfile.txt

移动文件到指定目录

mv newfile.txt mydir3

移动目录到指定目录

mv mydir2 mydir3

12、grep 命令

grep 功能:用于搜索某个文件中是否包含特定的字符串。

使用示例:

递归搜索当前目录下的所有文件是否包含"hello",并显示行号:

grep -Rn "hello" *

13、ps 命令

ps 功能:用于查看当前正在运行的进程信息。

使用示例(经常搭配grep使用):

显示系统上所有的进程

ps aux

筛选指定 进程名 的进程

ps aux | grep "进程名"

筛选指定 进程 id 的进程

ps aux | grep "进程id"

14、netstat 命令

nestat功能:用来查看系统上的网络状态。

使用示例(经常搭配grep使用):

显示系统上所有网络连接状态

netstat -anp

显示指定 进程名 的网络连接状态

netstat -anp | grep "进程名"

显示指定 端口号 的网络连接状态

netstat -anp | grep "端口号"

ps 和 netstat 最常用的两个场景:

1、使用 ps 来查看某个进程的 pid

ps aux | grep "进程名"

2、使用 nestat 查看某个进程绑定的端口号

netstat -anp | grep "进程名"
• 1

15、man 命令

Linux的命令有很多参数,上述介绍的Linux命令中,只是列举了一些常用的参数选项,对于这么多的参数,我们不可能全记住,我们可以通过 man ,查看Linux命令的联机手册获取帮助。

使用示例:

查看 netstat 的联机手册

man netstat

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree
|
1月前
|
Unix Linux
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。
|
25天前
|
Linux
Linux命令拓展:为cp和mv添加进度显示
好了,就这样,让你的Linux复制体验充满乐趣吧!记住,每一个冷冰冰的命令背后,都有方法让它变得热情起来。
82 8
|
1月前
|
安全 Linux 定位技术
Linux环境下必备的基础命令概览
以上就是Linux系统中的基本命令和工具,掌握它们就能帮你在Linux世界里游刃有余。这其实就像是学习驾驭一辆新车,熟悉了仪表盘,调整好了座椅,之后的旅程就只需要享受风驰电掣的乐趣了。
46 4
|
1月前
|
Unix Linux
linux命令—pwd
`pwd` 是 Linux/Unix 系统中的基础命令,用于显示用户当前所在的工作目录路径,帮助确认在文件系统中的位置。其核心功能包括打印逻辑路径(默认,-L 选项)和物理路径(-P 选项)。典型应用场景涵盖确认当前位置、调试符号链接问题及脚本编程中动态获取与操作路径。使用时需注意符号链接的区别、参数选择以及特殊字符处理,确保命令正确执行并满足需求。
|
2月前
|
监控 Linux
Linux命令大全:echo与tail实现输出重定向。
这样,我们实现了使用echo和tail命令进行输出重定向的目的。在实际应用中,输出重定向技巧可节省时间,提高工作效率。希望本文内容对您了解和掌握Linux系统中echo与tail命令以及输出重定向的操作有所帮助。
121 27
|
2月前
|
消息中间件 Linux Kafka
linux命令使用消费kafka的生产者、消费者
linux命令使用消费kafka的生产者、消费者
134 16
|
1月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
85 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
Linux 索引
linux命令—ls
`ls` 是 Linux 系统中用于列出目录内容的基础命令,功能强大且使用频率极高。它可以帮助用户查看文件、分析磁盘空间及检查权限等。常用选项如 `-l` 显示详细信息,`-a` 包含隐藏文件,`-h` 以易读格式展示大小,`-t` 按修改时间排序等。通过组合选项,可实现复杂需求,如递归遍历目录(`-R`)、显示 inode 号(`-i`)或结合正则过滤特定文件。注意权限限制、特殊字符处理及大规模目录操作可能带来的性能问题。掌握 `ls` 是高效使用 Linux 的关键一步。
|
1月前
|
Linux
linux文件重命名命令
本指南介绍Linux文件重命名方法,包括单文件操作的`mv`命令和批量处理的`rename`命令。`mv`可简单更改文件名并保留扩展名,如`mv old_file.txt new_name.txt`;`rename`支持正则表达式,适用于复杂批量操作,如`rename 's/2023/2024/' *.log`。提供实用技巧如大小写转换、数字序列处理等,并提醒覆盖风险与版本差异,建议使用`-n`参数预览效果。