Files
2021-11-30 18:24:53 +08:00
..
2021-11-30 18:24:53 +08:00

Datawhale Linux组队学习

Part1 内容介绍

在给大家分享知识的过程中,发现很多同学在学习竞赛都存在较多的问题:

  • Linux不会操作不知道文件目录创建、命令行等细节
  • Linux不知道如何运行代码保存模型
  • Pytorch不知道如何从头写代码
  • Pytorch不知道定义模型和运行模型

而上述问题都是一个竞赛选手、一个算法工程师所必备的。因此我们将从本月组织一次竞赛训练营活动,希望能够帮助大家入门数据竞赛。在活动中我们将布置具体竞赛任务,然后参与的同学们不断闯关完成,竟可能的帮助大家入门。

Part2 Linux基础使用

学习内容

Linux全称GNU/Linux是一种免费使用和自由传播的类UNIX操作系统其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布它主要受到Minix和Unix思想的启发是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。

Linux有上百种不同的发行版如基于社区开发的debian、archlinux和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。在全球超级计算机TOP500强操作系统排行榜中Linux的占比最近十几年长期保持在85%以上且一直呈现快速上升趋势。根据2016年的排行榜Linux的占比已经高达98.80%。其实在各种大、中小型企业的服务器应用领域,在企业内部服务器99%的情况下都是Linux系统如果你想成为一个合格的软件工程师&算法工程师Linux是你必备的技能

打卡汇总

任务名称 难度 所需技能
使用命令行登录指定的Linux环境 ssh
在目录下创建文件夹、删除文件夹 rm、mkdir
在目录下下载文件、阅读文件 wget、nano
在目录下使用vi或vim编辑文件 vi、vim
在目录下创建py文件并进行运行 python
在目录下创建py目录并进行import导入 python
在Linux系统中后台运行应用程序并打印日志 nohup
使用grep和awk从文件中筛选字符串 grep、awk
在目录下创建zip和tar压缩文件并进行解压 zip、tar
使用find和locate定位文件 find、locate

学习资料

打卡要求

注:

  • 需要使用指定的Linux系统完成打卡任务
  • 需要完成所有的任务细节才算完成一个任务

任务1使用命令行登录指定的Linux环境

任务要点ssh登录、密码输入、环境配置

任务2在目录下创建文件夹、删除文件夹

任务要点:创建文件夹、创建文件、删除文件、删除文件夹

任务3在目录下下载文件、阅读文件

任务要点:下载文件、移动文件、阅读文件

任务4在目录下使用vi或vim编辑文件

任务要点vi和vim使用

#!/usr/bin/env python3
print('Hello World!')

任务5在目录下创建py文件并进行运行

任务要点python的os和sys系统接口文件接口

  • 步骤1学习python下os模块处理文件和目录的函数https://www.runoob.com/python/os-file-methods.html
  • 步骤2学习python下sys模块和传参函数https://www.runoob.com/python3/python3-module.html
  • 步骤3在home/coggle目录下在你英文昵称中间不要有空格哦的文件夹中新建一个test5.py文件改程序可以使用os、sys模块完成以下功能
    • 功能1打印命令行参数Python
    • 功能2使用os模块打印/usr/bin/路径下所有以m开头的文件。
命令行输入python3 test5.py 参数1 参数2

程序输出
test5.py
参数1
参数2

任务6在目录下创建py目录并进行import导入

任务要点python代码模块化

/home/coggle/    
    你英文昵称命名的文件夹/        
        test6.py        
        affairs/            
        affairs.py

实现要求:

/home/coggle/你英文昵称命名的文件夹/目录下可以执行

python3 test6.py 10
没有bug并完成第十行内容的输出

任务7在Linux系统中后台运行应用程序并打印日志

任务要点:程序后台运行,进程管理

  • 步骤1在/home/coggle目录下在你英文昵称中间不要有空格哦的文件夹中创建一个sleep.py文件该文件需要完成以下功能
    • 程序一直运行
    • 每10秒输出当前时间
  • 步骤2学习 & 和 nohup后台执行的方法
  • 步骤3学习tmux的使用将步骤1的程序进行后台运行并将输出结果写入到txt文件。

任务8使用grep和awk从文件中筛选字符串

任务要点:字符筛选

任务9在目录下创建zip和tar压缩文件并进行解压

任务要点:文件压缩https://www.cnblogs.com/wxlf/p/8117602.html

  • 步骤1在/home/coggle目录下在你英文昵称中间不要有空格哦的文件夹中下载https://mirror.coggle.club/dataset/jaychou_lyrics.txt.zip
  • 步骤2使用zip 压缩/home/coggle目录下在你英文昵称中间不要有空格哦的文件夹
  • 步骤3将 /home/coggle目录下在你英文昵称中间不要有空格哦的文件夹打包为tar格式。
  • 步骤4将 /home/coggle目录下在你英文昵称中间不要有空格哦的文件夹打包为tar.gz格式。

任务10使用find和locate定位文件

任务要点:文件搜索

Part3 提问&回答

问:具体的活动是怎么安排的?

有任务,自己先尝试,然后之后会视频演示和讨论。

问:环境和配置是什么?

Linux上进行学习python3环境