第二周预习报告
学习内容
- Head First C 嗨翻 C 语言 第8章
- 《Windows C/C++加密解密实战》第3,5章
- 第三章重点 3.4,3.5, 特别3.4.4
- 第五章重点 5.3.7
- Head First C 嗨翻 C 语言 第八章
- 课程 mindmap
- 报告内容参考第一周
AI 对学习内容的总结( 1分)
要求
让AI( kimi ,元宝等) 阅读学习内容并进⾏总结 ,教材内容可以使⽤微信读书或者云班课电⼦教材
总结
《Head First C》这本书第8章的内容总结:《Head First C》是一本以独特方式介绍C语言的书籍,旨在以轻松易懂的方式帮助读者掌握C语言的基础知识。
第8章通常会深入探讨C语言中的函数,这是C语言编程中非常关键的一部分。函数是执行特定任务的代码块,可以被重复调用,从而提高代码的可重用性和组织性。以下是第8章可能包含的一些关键点:
-
静态库和动态库:介绍了 C 语言中如何创建和使用静态库和动态
库,以及如何通过 archive 文件共享代码。
链接器:解释了链接器的作用,它将编译后的对象文件链接成可执
行文件。
动态链接:介绍了动态链接的概念,即程序运行时才将代码链接到
程序中,这使得代码更易于更新和管理。
OpenCV:介绍了 OpenCV 库,这是一个开源的计算机视觉库,可
以用于图像处理和分析。
**Windows.C.C++.加密解密实战-**第三章
对称密码算法:介绍了对称密码算法的概念,包括流加密算法(如
RC4)和分组加密算法(如 DES、3DES、SM4)。
流加密算法:详细介绍了 RC4 算法的原理和实现方法,包括 C 语
言、C++ 语言和 OpenSSL 库的实现。
分组加密算法:介绍了分组加密算法的工作模式(如 ECB、CBC、CFB、OFB)和短块加密技术。
DES 和 3DES 算法:详细介绍了 DES 和 3DES 算法的原理和实现方法,包括 C 语言和 OpenSSL 库的实现。
SM4 算法:介绍了 SM4 算法的原理和实现方法,包括 C 语言和OpenSSL 库的实现。
OpenSSL 对称加解密:介绍了 OpenSSL 库中对称加解密的相关函数,如 EVP_CIPHER_CTX_init、EVP_EncryptInit_ex、EVP_EncryptUpdate 等。
**Windows.C.C++.加密解密实战-**第五章
Base64 编码:介绍了 Base64 编码的原理和实现方法,包括OpenSSL 命令行工具和 C 语言代码实现。
PEM 文件:介绍了 PEM 文件的格式和用途,以及如何使用OpenSSL 命令生成 PEM 文件。
重点内容
3.4.4 SM4 算法: 国密算法,安全性高,实现简单,适用于多种工作模式。
5.3.7 使用 OpenSSL 进行对称加解密: 使用 OpenSSL 库提供的函数进行对称加密和解密操作,方便实现各种算法和工作模式。
这三个文件提供了丰富的 C 语言加密和解密知识,涵盖了静态库和动态库、链接器、动态链接、OpenCV 库、对称密码算法、流加密算法、分组加密算法、DES 和 3DES 算法、SM4 算法、OpenSSL 对称加解密、Base64 编码和PEM 文件等内容。这些知识可以帮助开发者编写更安全、更可靠的 C 语言程序。
对 AI 总结的反思与补充( 2分)
要求
AI总结的问题
自己的补充
反思与补充
AI****总结的问题 kimi的总结虽然提供了对文档内容的广泛覆盖,但仍存在一些不足之处,下面主要是进行宏观的评价:
- 缺乏对知识内容的深度分析:总结中对文档内容的描述较为表面,仅仅是对概念的总结和叙述,缺少对核心概念和算法实现
细节的深入探讨。
- 对示例代码解释不足:书中包含了一些代码示例,但kimi的总结并没有对代码示例进行充分的解释,使得在学习容易忽略代
码示例的重要性且难以理解其具体功能和实现方式。
- 缺乏对整体知识体系的构建:各个主题和重点知识之间的内在联系和整体知识体系没有得到有效展现,知识总结呈现出碎片
化,不利于学习者构建知识框架,不易于获得知识的串联。
- 缺少错误处理:在实际编程中,错误处理是一个重要的部分,但总结中没有提及如何处理在创建和使用库时可能遇到的错
误。
- 缺少性能考虑:动态库虽然提供了许多便利,但在某些情况下可能会影响性能,这一点在总结中没有提及。
自己的补充
下面是我针对kimi总结的两本书三个章节进行分别的补充:
- 在第八章中
强调库的重要性:库是代码重用和模块化的关键,它们可以让开发者减少重复的工作,集中精力解决更复杂的问题,提高开放效率。动态库与静态库的选择:在实际开发中,选择使用动态库
还是静态库取决于项目的具体需求,例如对于需要频繁更新或希望减少最终可执行文件大小的场景,动态库可能是
更好的选择。
环境配置的重要性:在处理库文件时,正确配置编译器和链接器的环境至关重要,这包括设置正确的包含路径和库路径,以确保编译和链接过程能够顺利进行。于我个人而言,这点也是很重要,我曾多次没有妥善处理环境的配置,导致在编译时会出现失败和路径错误的问题,
- 在第五章中
讨论Base64编码时,指出其在数据传输效率上的潜在影响,认识到Base64编码的局限性,虽然Base64编码能够将二进制数据转换为可打印字符,但它并不是一种加密方法,不能提供数据的安全性。在传输敏感数据时,应该结合使用加密算法。提供Base64编码和解码的具体代码示例:展示如何在不同编程语言中使用Base64,以及如何通过编程方式处理编码和解码。
讨论PEM文件的安全性和可读性:如何安全地存储PEM文件,以及在使用过程中如何避免中间人攻击等安全风险。关于可读性,PEM文件的可读性是一个优点,但同时也是一个缺点,因为它可能暴露敏感信息。在处理含有敏感信息的PEM文件时,应确保适当的访问控制。扩展PEM文件的应用场景:探讨PEM文件在不同应用中的使用,如在配置SSL/TLS证书、安全电子邮件传输等场景的应用。
- 在第三章中
强调对称加密算法在密钥管理方面的挑战,以及如何安全地分发和存储密钥。对于SM4算法,比较其在不同平台上的性能表现,并与其他流行的加密算法如AES进行比较。这不仅有助于理解SM4算法的优势和局限,还能为选择合适的加密算法提供指导。
对于OpenSSL进行对称加解密,需要强调错误处理的重要性,并提供一些实际应用中的安全性保障措施。这包括如何验证加密操作的成功与否,以及如何确保加密过程中数据的完整性和安全性。强调错误处理是个很重要的意识。
学习思维导图( 2分)
要求
Mermaid 代码与截图(参考Mermaid MindMap语法)或者提交思维导图链接( 如果使⽤线上编辑器 ,推荐processon,xmind,…)
思维导图
代码:
mindmap
root((第三章 对称密码算法))
密码学基础
密码体制分类
对称加密
非对称加密
对称算法特点
速度快
效率高
密钥分发问题
密钥管理
密钥交换
流加密算法 (RC4)
伪随机密钥流生成
随机种子
密钥流生成器
算法特点
简单
快速
应用场景
SSL/TLS
WEP
其他安全协议
分组加密算法
DES
算法原理
子密钥生成迭代运算
3DES
算法原理
加密/解密过程
密钥使用
SM4
算法原理
密钥扩展
轮函数
加密/解密流程
工作模式
ECB
CBC
CFB
OFB
短块加密技术
填充技术
密文挪用
序列加密
OpenSSL 库使用
EVP Cipher API
上下文初始化
加密初始化
解密初始化
加解密流程
加密过程
解密过程
代码示例
加密示例
解密示例
mindmap
root((第五章 密码学中常见的编码格式))
Base64编码
由来
历史背景:Email只允许传送ASCII字符
设计目的:将二进制数据转换为可打印字符表示
索引表
64个可打印字符:A-Z, a-z, 0-9, +, /
数值与字符的对应关系
转化原理
6比特表示一个字符
每3个字节转换为4个Base64字符
应用实例
文本转换为Base64编码
不足3个字节的填充处理
PEM文件
定义
用于存储密钥和证书的文本文件
包含Base64编码的数据和标记信息
结构
开始和结束标记:如"-----BEGIN CERTIFICATE-----"
可选的信息头:如"Proc-Type"和"DEK-Info"
生成PEM文件
使用OpenSSL命令行工具
编程实现PEM编码和解码
编程实现Base64编解码
OpenSSL库函数
BIO_new和BIOf_base64函数base64_encode和base64_decode函数实现
编码和解码过程
使用OpenSSL的BIO方法进行Base64转换
代码示例
使用OpenSSL进行Base64编码和解码的示例代码
实战应用
使用Base64和PEM文件的场景
电子邮件加密
安全数据传输
mindmap
root((第八章 静态和动态库))
静态和动态库
描述:用于代码复用和跨程序共享
创建:静态库通过 ar 命令创建,动态库通过 gcc -shared 命令创建
使用:静态库在编译时链接,动态库在运行时链接
优缺点
静态库
优点:易于部署,性能可能更优
缺点:更新困难,可能导致较大的二进制文件
共享库
优点:方便更新和共享,减小二进制文件大小
缺点:可能需要额外的配置和依赖管理
库的创建
静态库创建:编译源文件,使用 ar 创建库
共享库创建:编译源文件,使用 -shared 标志创建库
在应用程序中使用库
静态库使用:指定库和头文件路径,链接到应用程序
共享库使用:设置运行时库路径,动态加载库
库管理
更新库:更新库文件,重新编译应用程序
分发库:分发库文件和头文件
工具和命令
GCC:用于编译和链接
AR:用于创建和维护静态库
OpenSSL:提供加密和解密功能
代码示例
静态库示例:创建和使用静态库的示例代码
共享库示例:创建和使用共享库的示例代码
常见问题和技巧
缺少库:找不到库文件的错误处理
不兼容库:不兼容库版本的问题
设置路径变量:如何设置库路径变量
与链接器的对话
洞见:链接器的工作和重要性
现实世界应用
Head First 健身中心:全球扩张案例,使用静态和动态库
基于 AI 的学习( 2分)
要求
⾄少找到⾃⼰理解不是太好 2 个概念 ,让 AI 对⾃⼰进⾏苏格拉底提问 . -参考下⾯提示语或者使⽤ AI Agent
提示词:“我在学习XXX知识点 ,请你以苏格拉底的⽅式对我进⾏提问 ,⼀次⼀个问题”
- 核⼼是要求AI⼯具:“请你以苏格拉底的⽅式对我进⾏提问”
- 然后AI⼯具就会给你提问 ,如果不知道问题的答案 ,可以反问AI :“你的理解( 回答)是什么?
- 如果你觉得差不多了 ,可以先问问AI⼯具:“针对我XXX知识点 ,我理解了吗?
- AI⼯具会给出它的判断 ,如果你也觉得⾃⼰想清楚了 ,可以最后问AI⼯具:“我的回答结束了 ,请对我的回答进⾏评价总结” ,让它帮你总结⼀下。
学习内容
M:我在学习密码学基本概念的知识点 ,请你以苏格拉底的⽅式对我进⾏提问
AI:当然,苏格拉底式的提问是一种通过提问引导对方深入思考和自我发现的方法。让我们开始吧:
1. 你能告诉我什么是PEM吗?
2. PEM在保护电子邮件内容方面通常使用哪些加密技术?
3. 在使用PEM进行加密时,通常涉及到哪些密钥管理的概念?
4. 你能描述一下在PEM加密中,公钥和私钥是如何协同工作的吗?
5. 在PEM加密中,如果私钥丢失了,我应该如何恢复或重新生成密钥?
6. 在重新生成密钥对时,我应该注意哪些安全措施?
7.信任链:请解释一下“信任链”在PEM中是如何建立的,以及它对于确保整个系统安全性的重要性。
8.实际应用:你能举出几个PEM在实际应用中的例子吗?比如,它在电子商务、网上银行或网络通信中的具体应用。
9.挑战与解决方案:在实施和维护PEM系统时,可能会遇到哪些挑战?有哪些技术和策略可以用来克服这些挑战?
10.未来发展:随着技术的进步,你认为PEM的未来发展趋势会是怎样的?有哪些新兴技术或理念可能会对其产生影响?
M:
1. 你能告诉我什么是PEM吗?
PEM,即“Privacy Enhanced Mail”,是早期的互联网电子邮件安全标准,用于确保邮件的机密性、完整性和认证性。尽管PEM技术已经被更先进的加密标准所取代,但它对电子邮件安全的发展仍然具有重要意义。PEM通常与电子邮件加密和密钥管理相关,提供了一种通过公钥和私钥加密和解密邮件内容的方法。
2. PEM在保护电子邮件内容方面通常使用哪些加密技术?
PEM在保护电子邮件内容方面主要使用非对称加密技术,特别是公钥加密和私钥解密的过程。发送者使用接收者的公钥对邮件内容进行加密,只有拥有对应私钥的接收者才能解密并阅读邮件内容。这种加密技术确保了邮件在传输过程中的机密性和完整性。
3. 在使用PEM进行加密时,通常涉及到哪些密钥管理的概念?
在使用PEM进行加密时,通常涉及到密钥生成、分发、存储、备份和撤销等密钥管理概念。密钥生成是创建公钥和私钥对的过程;分发是将公钥安全地传递给预期接收者的过程;存储需要确保密钥的安全性和可用性;备份是为了防止密钥丢失而进行的操作;撤销则是在密钥不再安全或需要更换时进行的操作。
4. 你能描述一下在PEM加密中,公钥和私钥是如何协同工作的吗?
在PEM加密中,公钥和私钥通过非对称加密技术协同工作。发送者使用接收者的公钥对邮件内容进行加密,形成一个加密的邮件包。这个加密的邮件包只能由拥有对应私钥的接收者进行解密。私钥由接收者保密持有,用于解密收到的加密邮件。这种机制确保了只有预期的接收者能够阅读邮件内容,从而保护了邮件的机密性。
5. 在PEM加密中,如果私钥丢失了,我应该如何恢复或重新生成密钥?
如果PEM加密中的私钥丢失了,通常无法直接恢复原始私钥,因为私钥是随机生成的且不可预测。此时,需要采取以下步骤来重新生成密钥对:
立即通知相关方:告知所有可能受影响的通信方私钥已经丢失,并停止使用与该私钥关联的公钥进行加密通信。
重新生成密钥对:使用安全的密钥生成工具重新生成一个新的公钥和私钥对。
更新和分发新公钥:将新生成的公钥安全地分发给所有需要与之通信的伙伴。
6. 在重新生成密钥对时,我应该注意哪些安全措施?
在重新生成密钥对时,应注意以下安全措施:
使用安全的密钥生成工具:确保使用的密钥生成工具是安全可靠的,以防止生成弱密钥或受到恶意软件的攻击。
保护私钥:私钥是敏感信息,必须妥善保护以防泄露。可以采用物理隔离、加密存储和访问控制等措施来确保私钥的安全性。
定期更换密钥:为了增强安全性,建议定期更换密钥对,以减少私钥长期使用的风险。
7. 信任链:请解释一下“信任链”在PEM中是如何建立的,以及它对于确保整个系统安全性的重要性。
在PEM中,“信任链”是通过证书和证书颁发机构(CA)建立的。证书是包含公钥及其所有者身份信息的数字文档,由受信任的CA签发。当一个证书被另一个证书签名时,就形成了一个信任链。这个信任链从根CA开始,逐级向下延伸到最终用户的证书。通过验证信任链中的每个证书都是由受信任的CA签发的,可以确保最终用户的公钥是可信的。这种信任链机制对于确保整个系统的安全性至关重要,因为它防止了恶意用户伪造公钥或篡改证书信息
8. 实际应用:你能举出几个PEM在实际应用中的例子吗?比如,它在电子商务、网上银行或网络通信中的具体应用。
PEM在实际应用中有许多例子,包括但不限于:
电子商务:在电子商务中,PEM技术可以用于保护客户订单、支付信息和敏感交易数据的机密性和完整性。商家可以使用客户的公钥加密订单信息,客户则使用自己的私钥解密并验证订单内容。
网上银行:网上银行系统广泛使用PEM技术来保护用户的登录凭证、交易指令和账户信息。银行可以使用用户的公钥加密敏感数据,用户则使用私钥进行解密和验证。
网络通信:PEM技术还可以用于加密网络通信中的敏感数据,如电子邮件、即时消息和文件传输等。通过使用PEM加密技术,可以确保通信内容在传输过程中不被窃听或篡改。
9. 挑战与解决方案:在实施和维护PEM系统时,可能会遇到哪些挑战?有哪些技术和策略可以用来克服这些挑战?
在实施和维护PEM系统时,可能会遇到以下挑战:
密钥管理复杂性:密钥的生成、分发、存储、备份和撤销等管理任务可能变得复杂且容易出错。为了克服这一挑战,可以采用专业的密钥管理工具来自动化和简化密钥管理流程。
兼容性问题:不同系统和应用程序可能支持不同的加密标准和协议,导致PEM加密的邮件或数据无法在所有环境中无缝传输。为了解决这个问题,可以制定统一的加密标准和协议规范,并推动行业内的互操作性测试。
性能影响:加密和解密操作可能会增加系统处理的负担并影响性能。为了平衡安全性和性能之间的关系,可以采用高效的加密算法和硬件加速技术来提高加密和解密的速度。
10. 未来发展:随着技术的进步,你认为PEM的未来发展趋势会是怎样的?有哪些新兴技术或理念可能会对其产生影响?
随着技术的进步,PEM的未来发展趋势可能会朝着以下几个方向发展:
集成化:PEM技术可能会与其他安全技术和协议更加紧密地集成在一起,形成更加全面和强大的安全解决方案。例如,PEM可以与TLS/SSL协议结合使用来保护网络通信的安全性。
自动化:密钥管理和加密操作的自动化程度可能会不断提高,以减少人为错误和降低管理成本。例如,可以使用人工智能和机器学习技术来优化密钥生成、分发和撤销等管理流程。
量子安全:随着量子计算技术的发展,传统加密技术可能会面临安全威胁。因此,PEM技术可能会向量子安全方向发展,采用能够抵抗量子计算攻击的加密算法和协议。
标准化:为了促进不同系统和应用程序之间的互操作性,PEM技术可能会进一步标准化其加密标准和协议规范。这将有助于降低集成成本和提高系统的安全性。
M:我在学习PEM的知识点,请你以苏格拉底的方式对我进行提问,一次一个问题
AI:当然,我们可以以苏格拉底式的对话方式来探讨SM4算法的知识点。请思考并回答以下问题:
基础定义:首先,请你简要解释一下SM4算法是什么?它属于哪一类加密算法?
加密原理:SM4算法是如何实现数据加密的?它采用了哪些基本的加密原则或技术?
密钥长度:在SM4算法中,密钥的长度是多少位?为什么选择这个长度?
S盒与T表:SM4算法中提到了S盒(替换盒)和T表(线性变换表),它们各自在算法中扮演了什么角色?
轮函数:SM4的加密过程分为多轮,每轮都执行了哪些操作?轮函数是如何设计的?
安全性分析:你认为SM4算法在哪些方面体现了其安全性?有没有已知的攻击方法能够破解SM4?
与其他算法比较:将SM4与AES、DES等其他流行的加密算法相比,它有哪些独特之处或优势?
应用场景:SM4算法在哪些领域或应用场景中得到了广泛应用?为什么选择SM4而不是其他算法?
实现与优化:在实现SM4算法时,有哪些关键的优化点或挑战?如何确保算法的高效执行?
未来展望:随着密码学领域的发展,你认为SM4算法在未来可能会面临哪些挑战或改进方向?
M:很好,让我们一一探讨这些问题:
(1)基础定义:
SM4算法是一种由中国国家密码管理局发布的分组对称密码算法,也被称为“中国商用密码算法SM4”。它属于对称加密算法,意味着加密和解密过程使用相同的密钥。SM4算法将明文分成128位的块,并对每个块进行加密,生成同样长度的密文。
(2)加密原理:
SM4算法通过一系列复杂的数学变换和迭代过程实现数据加密。它主要包括密钥扩展和加解密两部分。在密钥扩展阶段,从128位的主密钥生成32个32位的轮密钥。在加解密阶段,明文(或密文)经过32轮的迭代计算,每一轮使用一个轮密钥,并结合非线性变换函数(如S盒)和线性变换函数(如T表)进行加密(或解密)。
(3)密钥长度:
在SM4算法中,密钥的长度是128位(即16字节)。这个长度选择是基于安全性和效率的综合考虑。较长的密钥可以提供更高的安全性,但也会增加计算复杂度和资源消耗。128位密钥长度在当前密码学领域被认为是相对安全的,能够满足大多数应用场景的需求。
(4)S盒与T表:
S盒(替换盒):在SM4算法中,S盒是一个非线性的替换表,用于将输入的32位数据中的每个字节替换为另一个字节。这种替换增加了数据的非线性复杂度,使得加密过程更加难以预测和破解。
T表(线性变换表):虽然SM4算法中通常不直接提及T表,但算法中的线性变换部分(如移位和异或操作)可以视为一种广义的线性变换表。这些线性变换用于实现数据的扩散效果,确保加密后的数据块之间具有足够的关联性。
(5)轮函数:
SM4的加密过程分为32轮,每轮都执行一系列复杂的操作。轮函数的设计包括非线性变换(如S盒替换)、线性变换(如移位和异或操作)以及与其他状态变量的组合运算。这些操作共同作用于当前的数据块和轮密钥上,生成新的数据块作为下一轮的输入。轮函数的设计确保了加密过程的复杂性和安全性。
(6)安全性分析:
SM4算法在多个方面体现了其安全性:
密钥长度:128位的密钥长度提供了较高的安全性。
非线性变换:S盒的非线性特性增加了加密过程的复杂度。
线性变换:线性变换的扩散效果确保了数据块之间的关联性。
多轮迭代:32轮的迭代计算进一步增强了加密的安全性。
解密密钥的逆序使用:解密过程使用加密密钥的逆序作为轮密钥序列,这增加了破解的难度。
目前,尚未有公开的、有效的攻击方法能够直接破解SM4算法。
(7)与其他算法比较:
与AES、DES等其他流行的加密算法相比,SM4算法具有以下独特之处或优势:
中国标准:SM4是中国国家密码标准中定义的算法,具有本土化的优势。
性能优化:针对中国市场的硬件和软件环境进行了优化,可能在某些应用场景下具有更好的性能表现。
安全性:虽然与AES等算法在安全性上相当,但SM4算法的设计和实现细节可能更适合中国市场的特定需求。
(8)应用场景:
SM4算法在金融、电子商务、云计算、物联网等领域得到了广泛应用。选择SM4算法的原因可能包括:
符合国家标准:满足中国市场的合规性要求。
安全性高:能够保护敏感数据免受未经授权的访问和篡改。
性能优越:在特定硬件和软件环境下具有较好的加密和解密性能。
(9)实现与优化:
在实现SM4算法时,关键的优化点包括:
算法优化:通过优化算法的数学结构和运算过程来提高加密和解密的速度。
硬件加速:利用专门的硬件加速器(如加密芯片)来加速加密和解密过程。
软件优化:针对特定的编程语言和平台进行优化,以提高代码的执行效率。
并行处理:利用多核处理器或分布式计算资源来实现并行加密和解密操作。
(10)未来展望:
随着密码学领域的发展,SM4算法在未来可能会面临以下挑战或改进方向:
量子计算攻击:随着量子计算技术的发展,传统的加密算法可能面临被破解的风险。因此,需要研究抗量子计算的加密算法或增强现有算法的抗量子计算能力。
安全性提升:随着密码分析技术的不断进步,可能需要增加SM4算法的密钥长度或改进其算法结构以提高安全性。
标准化与国际化:推动SM4算法的国际化进程,争取成为国际标准的加密算法之一。这有助于提升SM4算法在全球范围内的认可度和应用广泛性。
性能优化:继续优化SM4算法的实现方式,以提高其在各种硬件和软件环境下的加密和解密性能。
学习实践过程遇到的问题与解决⽅式(AI 驱动,优先使⽤AI⼯具解决问题)( 2分)
- 在上课跟着老师使用Linux命令时,遇到报错“-bash:/home/lwy/testgit: Is a directory”
解决过程: 使用kimi进行搜索和查询,回复如下: 这个错误信息表明你尝试在 Bash shell 中执行一个目录,而不是一个可执行文件。在 Linux 和Unix-like 系统中,当你输入一个命令并按下回车键时,系统会尝试找到并执行与该命令名相匹配的可执行文件。如果找到的是一个目录,而不是一个文件,就会出现这个错误。 要解决这个问题,你需要确保你执行的是正确的命令。如果你想要进入一个目录,你应该使用 cd 命令,如下所示:cd /home/lwy/testgit如果你想要在该目录中执行某个特定的脚本或程序,你需要指定脚本或
程序的完整路径。例如,如果目录中有一个名为 script.sh 的可执行脚本,你应该这样执行它:/home/lwy/testgit/script.sh确保你有足够的权限来执行该脚本,并且脚本具有执行权限。如果没有,你可以使用 chmod 命令给予执行权限:chmod+x/home/lwy/testgit/script.sh然后再尝试执行脚本:/home/lwy/testgit/script.sh如果你不确定目录中有什么,可以使用 ls 命令来列出目录内容:ls /home/lwy/testgit这将帮助你找到正确的文件或脚本来执行。 尝试后发现是我没有权限,我在使用下面的命令后,解决了问题。
问题 2: 在openruler中下载命令的时候频繁报错,显示我什么都不能使用,都在报错。
解决过程: 使用kimi进行搜索和查询,回复如下:。在参考其中部分命令
后,环境配置成功,变量PATH修复。