哈哈哈,我又来参加DataWhale组队学习了,本期是第32期组队学习,具体时间 20211213~20211228
,学习网址如下:
课程链接
备份链接
言归正传,开始学习了。
任务1:使用命令行登录指定的Linux环境
1.1 常用SSH工具介绍
不知道你常用的 ssh
工具是啥,我常用的有两个,分别是 MobaXterm
和 Xshell
,下面简单对比一下两个工具
对比项 | MobaXterm | Xshell |
---|---|---|
是否开源免费 | 否 | 否 |
上手难度 | 低 | 高 |
网络教程 | 少 | 多 |
是否直接支持ftp下载 | 是 | 否(需要Xftp) |
是否支持批量执行命令 | 是,可以录制宏 | 是可以编制多行登录脚本 |
是否可以连接多种对象 | 是 | 否 |
是否支持 keepalive | 是(感觉支持的不好) | 是,默认就是支持的 |
是否支持负责的代理设置 | 否 | 是 |
复制粘贴是否方便 | 是 | 否 |
两个都是付费的 ssh
工具,学习时可以使用试用版或者破解版本(某度还算好找)。相比之下,MobaXterm
操作更加快捷,所以我先使用 MobaXterm
进行 Linux
实践课程的操作。
1.2 MobaXterm 操作实践
使用步骤如下:
- 新建
Session
; - 点击选择
SSH
- 输入远程服务器的ip,点击小人头像,设置登录的账户,设置完成后点击确认即可;
- 点击
Specify username
即可选择刚才设置号的账户;
- 点击
OK
即可自动登录远程服务器;第二次登录时,直接双击这个Session
就可以了,真是很方便哦~~
任务2:在目录下创建文件夹、删除文件夹
2.1 学习目录结构
与 Windows
不同,Linux
操作系统下只有一个盘,其根目录就是 /
,查找文件还是挺方便的。
可以使用 ls /
或者 ll /
命令查看 Linux
操作系统的目录结构。
Linux
操作系统的目录结构是树形结构。
这些目录存放的内容可以参考:Linux 系统目录结构
2.2 学习文件和目录管理
切换至某一特定目录或者操作某个特定的文件,有绝对路径和相对路径两种命令写法:
- 绝对路径
cd /usr/share/doc
- 相对路径
..
表示同级目录,那么cd ../xxx
就是切换到同级目录下的xxx
文件夹
扩展内容:
linux中cd / cd~ cd cd- 和cd…之间的区别
序号 | 命令 | 释义 |
---|---|---|
1 | cd | 进入用户主目录 |
2 | cd ~ | 进入用户主目录 |
3 | cd - | 返回进入此目录之前所在目录 |
4 | cd .. | 返回上一级目录 |
5 | cd ../.. | 返回上两级目录 |
6 | cd !$ | 把上个命令的参数作为cd 参数使用 |
7 | cd / | 进入根目录 |
8 | cd . | 当前目录 |
2.3 创建目录
接下来,创建个人的文件夹供学习使用:
2.4 创建空文件
Linux
可以通过多种命令创建空文件,具体如下:
序号 | 命令 | 语法 |
---|---|---|
1 | > | > 11.txt |
2 | touch | touch 22.txt |
3 | echo | echo '' > 33.txt |
4 | printf | printf '' > 44.txt |
5 | cat | cat > 55.txt , Ctrl+C |
6 | vi | vi 66.txt ( :q + 回车 退出) |
7 | nano | nano Ctrl+O 77.txt 回车 Ctrl+X |
8 | head | head > 88.txt , Ctrl+C |
9 | tail | tail > 99.txt , Ctrl+C |
10 | tail | truncate --size 0 100.txt |
2.5 删除文件
删除刚才创建的文件
2.6 删除子文件夹 datawhale,然后删除父文件夹 mba1398
cd ..
命令可以切换至上级目录,删除文件夹时,需要使用 -R
参数,详见下图操作:
任务3:在目录下下载文件、阅读文件
首先再次创建个人目录,方法同上,不在赘述
3.1 使用 wget 命令下载文件
使用命令 wget filename
即可
3.2 使用head、cat、tail命令阅读下载的文件
head -n filename
:显示前n
行cat filename
:一般用于全文阅读tail -n filename
:显示后n
行
-
3.3 在命令行使用ipython进入python3环境,并使用pandas读取下载的文件
任务4:在目录下使用vi或vim编辑文件
4.1 学习nano使用
首先,使用 nano filename
即可打开一个文件,如果此文件不存在,则创建一个新文件。
文件打开后即可输入文本内容,在编辑器顶部会显示版本信息及文件名称。
在编辑器下方可以看到如下组合键说明,^
就是 Ctrl
键
常用组合键说明如下:
^G (F1)
显示帮助
^X (F2)
关闭当前文件缓冲区 / 离开 nano
^O (F3)
写入当前文件至磁盘
^J (F4)
对齐当前段落
^R (F5)
插入其他文件至当前文件
^W (F6)
查找字符串或正则表示式
^Y (F7)
跳至前一屏
^V (F8)
跳至后一屏
^K (F9)
剪切当前这行并存至剪贴板
^U (F10)
从剪贴板粘贴至当前行
^C (F11)
显示光标位置
^T (F12)
尝试运行拼写检查
4.2 学习vim使用
据说 vim 是最强大的 Linux 文本编辑器,但是学习成本较高。vim 其实是 vi 的升级版,对于普通来说, vi 足够用了。
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是:
- 命令模式
用户刚刚启动 vi/vim,便进入了命令模式。此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
常用命令:
- i 切换到输入模式,以输入字符。
- x 删除当前光标所在处的字符。
- : 切换到底线命令模式,以在最底一行输入命令。
- 输入模式
在命令模式下按下i
就进入了输入模式。
在输入模式中,可以使用以下按键:
- 字符按键以及Shift组合,输入字符
- ENTER,回车键,换行
- BACK SPACE,退格键,删除光标前一个字符
- DEL,删除键,删除光标后一个字符
- 方向键,在文本中移动光标
- HOME/END,移动光标到行首/行尾
- Page Up/Page Down,上/下翻页
- Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
- ESC,退出输入模式,切换到命令模式
- 底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有:
:q
退出程序:w
保存文件:wq
保存文件,退出程序
按ESC键可随时退出底线命令模式。
简单的说,我们可以将这三个模式想成底下的图标来表示:
4.3 分别使用Nano和Vim创建py文件,输入内容,并运行
- 使用 nano
- 输入
nano test1.py
创建py文件 - 输入以下内容:
#!/usr/bin/env python3
print('Hello World!')
- 按快捷键
Ctrl+O
,敲回车 - 按快捷键
Ctrl+X
- 使用 vim
- 输入
vim test2.py
创建py文件 - 按快捷键
i
- 输入以下内容:
#!/usr/bin/env python3
print('Hello World!')
- 按快捷键
Esc
- 输入
:wq
,敲回车
至此,文件创建完毕。
参考文档:
nano 快捷键