# 简介

本文及后续文章都是基于 bash shell 讲解, Linux 发行版本为 Ubuntu 。本文指导读者快速入门 shell 脚本编程而刻意模糊化其他基本概念,本系列于 2022-07-28 开始更新,每天更新一个小节,直到结束,主要是讲解 shell 编程,其中也会涉及到相关的 Linux 知识。

整个 shell 系列不会讲解如何安装双系统,也不会讲解如何安装虚拟机以及 Linux 相关版本的镜像文件。如果你需要相关的虚拟机和 Linux 的安装视频,我推荐这个:

https://www.bilibili.com/video/BV18U4y1W7av?spm_id_from=333.999.0.0&vd_source=5acf5a7b23d28e7633e5a9b381c57c42

B 站关注 Micro_Frank

# ssh 连接 Ubuntu

我不是很喜欢在虚拟机里面使用命令行,所以就在外部通过终端来访问虚拟机上的 Ubuntu

  • Ubuntu 中使用命令 ifcofig 查看系统 IP 地址。

image-20220728152200134

当然,有可能使用了 ipconfig 查不到 IP 地址,那么请使用 sudo dhclient ens33 命令,具体你可以百度。

  • 在自己桌面使用 win+r ,输入 cmd 。使用 ssh 连接: ssh 用户名@IP地址

image-20220728152655411

之前因为某些原因,我的 Ubuntu 修改过 ssh 连接的端口号,所以在连接时需要通过 -p 选项来指定端口号。如果你没有改过,就不需要指定了。

# 下载 Vim

Vim 是一个超级强大的编辑器,我也不是很熟练,主要就是用的少。

sudo apt install vim

我已经下载过了,就不截图了,实在不会你就去百度。

# 创建脚本文件

作为学习使用,我建议你先创建一个文件夹用来存放你平时写的练习脚本,文件名可以叫 Shell_Files ,随便你啦。

  • 进入你刚才创建的文件夹: cd Shell_Files
  • 创建一个文件: touch test_1 ,不需要跟后缀。文件后缀的作用无非就是打开这个文件的方式(你现在可以这么理解),也可以跟 sh 后缀,比如 touch test_1.sh
  • 使用 vim 来编写脚本程序: vim test_1.sh 。进入到编辑界面后,请不要乱动键盘,你现在并没有处于编辑模式。敲击 i 键进入 insert 模式,你就可以编辑了,你可以输入以下代码
#!/bin/bash
val=10
while echo ""
do
        echo " testing... "
done

shell 中, # 后面跟的是注释,但是在编写脚本时,你必须加上第一行的注释来指定你要是用的 shell ,你不会以为 shell 里面只有 bash 吧?第二行是定义一个变量(弱类型语言), while 里面应该跟上判断条件,条件为 true 继续执行,为 false 结束执行。但是 echo 是自动换行的打印语句,所以成功执行echo ""while 里面就判断为 true 。然后执行 echo "testing... "

代码编写完后,敲击 Esc ,再输入冒号,再输入 wqwwriteqquit 。回车,即可保存退出。同学,我劝你不要乱点啊🐶。

# 修改文件权限

一般来说,你刚创建的文件只有读 r 和写 w 的权限,并没有执行 x 该文件的权限。请按顺序调用以下命令:

  • chmod u+x test_1.sh ,该命令为脚本文件赋予可执行的权限,其实到这里,你的脚本文件就可以执行了。
  • touch new_file 创建一个新的文件,该文件只有读和写的权限
  • ll ,其实该命令就是 ls -al 的简写。

image-20220728155413986

从上图可以看出,下面两个可执行文件(绿色)比 new_File 多了一个 x ,这其实就是执行权限。

# 运行脚本文件

运行文件,只需要执行以下命令

./test_1.sh

其中 ./ 表示当前目录下, test_1.sh 是指定文件名。为什么非要加 ./ 呢?我明明已经在当前目录下了,能不能直接使用 test_1.sh 来运行呢?可以,这个涉及到环境变量,这是后话,nice,又挖一个坑,你要是求知心切,就去百度吧。

哦,你想要停下你的脚本运行,使用 ctrl+c 即可。