【书生.浦语实战营】——入门岛

news2024/12/25 9:16:33

【书生.浦语实战营】——入门岛_第一关_Linux基础

  • 任务分布
  • 1. 本地vscode远程连接并进行端口映射
    • 端口映射
      • What——何为端口映射
      • How——怎么进行端口映射
  • 2. Linux基础命令
    • touch :创建文件
    • mkdir :创建目录
    • cd:进入 退出 目录
    • pwd :确定当前所在目录
    • cat:可以查看文件中的内容
    • vi 和 vim :编辑文件
    • cp 和 ln
    • ls:可以用来列出目录的内容以及详细信息
    • sed: 流文本编辑
  • 进程管理命令
    • nvidia-smi 命令
    • 远程连接服务器并使用conda创建虚拟环境
    • studio-conda使用与Shell
  • 第二关
    • 完成leetcode383
    • 远程连接开发机并debug
  • 第三关——git 基础
    • 提交个人介绍PR
    • 创建一个个人仓库
  • 第四关

任务分布

闯关任务	完成SSH连接与端口映射并运行hello_world.py	10min
可选任务 1	将Linux基础命令在开发机上完成一遍	10min
可选任务 2	使用 VSCODE 远程连接开发机并创建一个conda环境	10min
可选任务 3	创建并运行test.sh文件	10min

1. 本地vscode远程连接并进行端口映射

在这里插入图片描述

端口映射

What——何为端口映射

端口映射是一种网络技术,它可以将外网中的任意端口映射到内网中的相应端口,实现内网与外网之间的通信。通过端口映射,可以在外网访问内网中的服务或应用,实现跨越网络的便捷通信。

How——怎么进行端口映射

使用 ssh命令进行

ssh -p 37367 root@ssh.intern-ai.org.cn -CNg -L {本地机器_PORT}:127.0.0.1:{开发机_PORT} -o StrictHostKeyChecking=no

在这里插入图片描述vscode 也可以自动进行端口映射
在这里插入图片描述

2. Linux基础命令

创建文件:可以使用 touch 命令创建空文件。
创建目录:使用 mkdir 命令。
目录切换:使用cd命令。
显示所在目录:使用pwd命令。
查看文件内容:如使用 cat 直接显示文件全部内容,more 和 less 可以分页查看。
编辑文件:如 vi 或 vim 等编辑器。
复制文件:用 cp 命令。
创建文件链接:用ln命令。
移动文件:通过 mv 命令。
删除文件:使用 rm 命令。
删除目录:rmdir(只能删除空目录)或 rm -r(可删除非空目录)。
查找文件:可以用 find 命令。
查看文件或目录的详细信息:使用ls命令,如使用 ls -l查看目录下文件的详细信息。
处理文件:进行复杂的文件操作,可以使用sed命令。

touch :创建文件

touch demo.py
在这里插入图片描述

mkdir :创建目录

mkdir test
在这里插入图片描述

cd:进入 退出 目录

在这里插入图片描述

pwd :确定当前所在目录

在这里插入图片描述

cat:可以查看文件中的内容

在这里插入图片描述

vi 和 vim :编辑文件

关于这个,详见笔者之前文章

cp 和 ln

复制文件:cp 源文件目录 目标文件目录
复制目录:cp -r 源目录 目标目录
例如:复制根目录下的hello_world.py文件到test中
命令:
在这里插入图片描述结果:
在这里插入图片描述
如果直接使用 cp 命令来复制这些模型文件,尤其是当需要多次复制同一份模型文件时,会导致磁盘空间的大量消耗。例如,在进行模型测试、调优或者部署多个实例时,可能会重复复制同一份模型数据,这样每一份都是独立的副本,自然会占用更多的磁盘空间。

相比之下,使用符号链接(软链接)或硬链接可以有效地减少磁盘空间的使用:

硬链接:对于硬链接而言,文件系统中的多个文件名实际上指向同一个inode(文件的数据存储单元)。因此,即使创建了多个硬链接,文件的实际内容只存储一次,不会增加额外的磁盘空间需求。不过,硬链接只能在同一文件系统内创建。

软链接(符号链接):软链接 **类似于Windows中的快捷方式** 。它是一个指向另一个文件路径的特殊文件。软链接文件本身包含了目标文件的路径信息,而不是实际的数据。因此,创建多少个软链接都不会增加磁盘空间负担,只是存储了路径信息而已。软链接可以跨越不同的文件系统。

使用:
ln [参数][源文件或目录][目标文件或目录]

ls:可以用来列出目录的内容以及详细信息

-a:显示所有文件和目录,包括隐藏文件(以.开头的文件或目录)。
-l:以长格式显示详细信息,包括文件权限、所有者、大小、修改时间等。
-h:与-l结合使用,以人类可读的方式显示文件大小(如K、M、G等)。
-R:递归列出子目录的内容。
-t:按文件修改时间排序显示

在这里插入图片描述按修改时间顺序进行展示
在这里插入图片描述

sed: 流文本编辑

在这里插入图片描述

进程管理命令

ps :列出当前系统中的进程。使用不同的选项可以显示不同的进程信息
ps nux :显示系统所有进程的详细信息
在这里插入图片描述
top:动态显示系统中进程的状态。它会实时更新进程列表,显示CPU和内存使用率最高的进程。
在这里插入图片描述

pstree:以树状图的形式显示当前运行的进程及其父子关系

kill PID :杀死指定的进程ID
kill -9 PID :强制杀死指定的进程ID

nvidia-smi 命令

显示 GPU 状态的摘要信息:
nvidia-smi
显示详细的 GPU 状态信息:
nvidia-smi -l 1
这个命令会每1秒更新一次状态信息。

显示 GPU 的帮助信息:
nvidia-smi -h
列出所有 GPU 并显示它们的 PID 和进程名称:
nvidia-smi pmon
强制结束指定的 GPU 进程:
nvidia-smi --id=0 --ex_pid=12345
这会强制结束 GPU ID 为 0 上的 PID 为 12345 的进程。

设置 GPU 性能模式:
nvidia-smi -pm 1
nvidia-smi -i 0 -pm 1
第一个命令会为所有 GPU 设置为性能模式,第二个命令只针对 ID 为 0 的 GPU。

重启 GPU:
nvidia-smi --id=0 -r
这会重启 ID 为 0 的 GPU。

引用自课程学习手册在这里插入图片描述

远程连接服务器并使用conda创建虚拟环境

  1. 开发机中已经安好了conda
    conda --version:查看conda版本
    要对conda进行换源,提速
  2. 创建虚拟环境
    使用conda create -n name python=3.10创建虚拟环境,这里表示创建了python版本为3.10、名字为name的虚拟环境。创建后,可以在.conda目录下的envs目录下找到。
    在这里插入图片描述在这里插入图片描述常用的是激活环境命令
    conda activate 环境名字 :激活环境
    conda deactivate 环境名字:退出环境
    conda env list :查看环境列表
    conda list :查看当前环境下安装的包

在这里插入图片描述

studio-conda使用与Shell

studio-conda:开发机内置的命令。使用shell脚本实现

第二关

完成leetcode383

class Solution:
    def canConstruct(self, ransomNote: str, magazine: str) -> bool:
        # 字典用于存储字符计数
        char_count = {}

        # 统计 magazine 中字符的出现次数
        for char in magazine:
            if char in char_count:
                char_count[char] += 1
            else:
                char_count[char] = 1

        # 检查 ransomNote 中字符是否可以在 magazine 中找到
        for char in ransomNote:
            if char in char_count and char_count[char] > 0:
                char_count[char] -= 1  # 使用一个字符
            else:
                return False  # 如果 magazine 中没有该字符或用完了

        return True  # 所有字符都可以构成


在这里插入图片描述

远程连接开发机并debug

在这里插入图片描述

第三关——git 基础

提交个人介绍PR

基本步骤是:

1. fork原始项目
2. git clone 下来
3. 创建修改自己的个人介绍.md
4. add .  添加全部修改
5. git commit -m "提交信息(建议英文)" 合并
6. git push

在这里插入图片描述

创建一个个人仓库

在这里插入图片描述

第四关

模型下载
这里使用魔搭社区进行下载
在这里插入图片描述
下载完就会在目录中看到如下json文件
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2231415.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Pytorch】Pytorch的安装

目录 一、介绍 1.相关要素 二、NVIDIA显卡安装pytorch 1、官网安装 2、清华源下载 一、介绍 1.相关要素 (1)nvidia-driver(也叫做 cuda driver):英伟达GPU驱动,命令:nvidia-smi &#xf…

HTML+CSS科技感时钟(附源码!!!)

预览效果 源码(直接复制使用) <!DOCTYPE html> <html lang"zh-Hans"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>科技感时钟</…

vue3中跨层传递provide、inject

前置说明 在 Vue 3 中&#xff0c;provide 和 inject 是一对用于跨组件树传递数据的 API。它们允许你在祖先组件中使用 provide 提供数据或服务&#xff0c;然后在后代组件中使用 inject 来获取这些数据或服务。这种方式特别适用于跨多个层级的组件传递数据&#xff0c;而不需要…

Zig 语言通用代码生成器:逻辑,发布冒烟测试版二之二

Zig 语言通用代码生成器&#xff1a;逻辑&#xff0c;发布冒烟测试版二之二 Zig 语言通用代码生成器&#xff1a;逻辑&#xff0c;已发布冒烟测试版二。此版本完善了代码生成物。支持多对多关系。修复了所有单域动词。并有更多缺陷修复。暂时不支持图片类型。暂时不支持日期和…

获取Hive表备注

DESCRIBE EXTENDED 表名;先获取Detailed Table Information这行的data_type字段数据&#xff0c;进行正则匹配&#xff0c;拿到表备注&#xff0c;如下&#xff1a; String str ReUtil.get("parameters:\\{(?!.*?\\().*transient_lastDdlTime.*?comment(.*?)\\}&quo…

前端请求后端接口报错(blocked:mixed-content),以及解决办法

报错原因&#xff1a;被浏览器拦截了&#xff0c;因为接口地址不是https的。 什么是混合内容&#xff08;Mixed Content&#xff09; 混合内容是指在同一页面中同时包含安全&#xff08;HTTPS&#xff09;和非安全&#xff08;HTTP&#xff09;资源的情况。当浏览器试图加载非…

TCP是怎样工作的网络拥塞控制理论和算法部分记录

参考资料 https://github.com/ituring/tcp-book 流量控制、窗口控制和拥塞控制的关系 流量控制、窗口控制和拥塞控制的关系如图所示 窗口控制是上层的概念&#xff0c;核心思路是基于滑动窗口技术传输数据。而确定发送窗口大小的方法有流量控制和拥塞控制两种 流量控制&…

python eval() 怎么用

eval函数的使用方法 函数的作用&#xff1a; 计算指定表达式的值。也就是说它要执行的Python代码只能是单个运算表达式&#xff08;注意eval不支持任意形式的赋值操作&#xff09;&#xff0c;而不能是复杂的代码逻辑&#xff0c;这一点和lambda表达式比较相似。 函数定义&a…

WPF+MVVM案例实战(十二)- 3D数字翻牌计时实现

文章目录 1、运行效果2、功能实现1、文件创建2、控件代码实现3、控件引用与菜单实现1.引用用户控件2.按钮菜单3、计时器界面实现4、源代码获取1、运行效果 3D数字翻牌计时 2、功能实现 1、文件创建 打开项目 Wpf_Examples ,在用户控件 UserControlLib 中创建 NumberFoldi…

Redis 下载安装(Windows11)

目录 Redis工具下载安装 Redis 工具 系统&#xff1a;Windows 11 下载 Windows版本安装包&#xff1a;通过百度网盘分享的文件&#xff1a;Redis-x64-3.0.504.msi 链接&#xff1a;https://pan.baidu.com/s/1qxq0AZJe5bXeCPzm1-RBCg?pwdc14j 提取码&#xff1a;c14j 安装…

ArcGIS软件之“新建中学最适合地址”地图制作

目录 最终效果图(全文图中的颜色类似即可&#xff0c;形状一样为标准&#xff09;第一步、设置现有中学的欧式距离第二步、将计算好的欧式距离 进行重分类第三步、进行核密度分析第四步、进行人口密度的重分类第五步、进行土地使用的要素转栅格第六步、对上一步进行重分类第七步…

K 临近算法

机器学习中的 K 临近算法&#xff0c;计算输入数据与训练集中数据的距离&#xff0c;选取 k 个最近的数据&#xff0c;选中的数据中&#xff0c;那个分类多&#xff0c;那个分类就是最终结果。特征空间的距离有多重测量方法&#xff0c;最常用的就是欧氏距离&#xff0c;公式如…

聪明的你能从千门八将108局学到什么,对你的未来人生有哪些深远的影响?

千门八将108局&#xff1a;智慧的启迪与人生指引 在古老智慧的宝库中&#xff0c;千门八将108局犹如璀璨星辰&#xff0c;闪耀着神秘而深邃的光芒。那些认真钻研过这些局的人&#xff0c;仿佛经历了一场穿越时空的智慧洗礼&#xff0c;从中收获了无价的人生财富。 一、从千门八…

【前端】CSS知识梳理

基础&#xff1a;标签选择器、类选择器、id选择器和通配符选择器 font:font-style(normal) font-weight(400) font-size(16px) /line-height(0) font-family(宋体&#xff09; 复合&#xff1a; 后代选择器&#xff08; &#xff09;、子选择器&#xff08;>)、并集选择器(…

JAVA 插入 JSON 对象到 PostgreSQL

博主主页:【南鸢1.0】 本文专栏&#xff1a;JAVA 目录 ​编辑 简介 所用&#xff1a; 1、 确保 PostgreSQL 数据库支持 JSON&#xff1a; 2、添加 PostgreSQL JDBC 驱动 3、安装和运行 PostgreSQL 4、建立数据库的连接 简介 在现代软件开发中&#xff0c;由于 JSON 数据…

都快2025年了,来看看哪个编程语言才是时下热门吧

早上好啊&#xff0c;大佬们&#xff0c;今天咱们不讲知识&#xff0c;今天我们来看看时下热门的编程语言都是哪些&#xff0c;大佬们又都是在学哪些语言呢。 最近一些朋友和我在讨论哪个编程语言是现在 最好用 最厉害 的编程语言。 有人说&#xff0c;Python简单好用&#xf…

GraphQL 与 Elasticsearch 相遇:使用 Hasura DDN 构建可扩展、支持 AI 的应用程序

作者&#xff1a;来自 Elastic Praveen Durairaju GraphQL 提供了一种高效且灵活的数据查询方式。本博客将解释 Hasura DDN 如何与 Elasticsearch 配合使用&#xff0c;以实现高性能和元数据驱动的数据访问。 此示例的代码和设置可在此 GitHub 存储库 - elasticsearch-subgraph…

.bixi勒索病毒来袭:如何防止文件加密与数据丢失?

导言 在网络威胁剧烈的今天&#xff0c;勒索病毒已成为企业和个人面临的重大安全挑战&#xff0c;其中虫洞勒索病毒习得高强度的加密手段和急剧传播的特性引起关注。一旦感染&#xff0c;就会加密关键数据并索要赎金&#xff0c;导致数据无法访问并带来巨大的财务损失。更为严…

Mac 配置SourceTree集成云效

1、背景 工作使用的是自己的笔记本&#xff0c;一个是比较卡&#xff0c;在一个是敏感信息比较多还是使用公司的电脑&#xff0c;但是系统是Mac就很麻烦&#xff0c;在网上找了帖子记录一下 2、配置 打开终端 ssh-keygen -t rsa #一直回车就行 cd .ssh cat id_rsa.pub #查…

如何选择适合自己的 Python IDE

集成开发环境&#xff08;IDE&#xff09;是指提供广泛软件开发能力的软件应用程序。IDE 通常包括源代码编辑器、构建自动化工具和调试器。大多数现代 IDE 都配备了智能代码补全功能。在本文中&#xff0c;你将发现目前市场上最好的 Python IDE。 什么是 IDE&#xff1f; IDE…