开发环境、代码编辑与项目生成命令 · 生成项目、服务接口与网站至迁移、转换与分析已有源码
生成项目、服务接口与网站
先看项目脚手架,再看接口代码生成;每种框架和协议保持自己的参数示例。
jhipster · 使用单体或微服务架构的 Web 应用程序生成器
更多信息:https://www.jhipster.tech/creating-an-app/#command-line-options。
- 生成一个简单的全栈项目(单体或微服务):
bash
jhipster- 生成一个简单的前端项目:
bash
jhipster --skip-server- 生成一个简单的后端项目:
bash
jhipster --skip-client- 将最新的 JHipster 更新应用到项目中:
bash
jhipster upgrade- 向已生成的项目添加一个新实体:
bash
jhipster entity {{实体名称}}- 导入一个 JDL 文件来配置您的应用程序(请参阅:https://start.jhipster.tech/jdl-studio/):
bash
jhipster import-jdl {{文件1.jh 文件2.jh ... n文件.jh}}- 为您的应用程序生成一个 CI/CD 管道:
bash
jhipster ci-cd- 为您的应用程序生成 Kubernetes 配置:
bash
jhipster kubernetesquarkus · 创建 Quarkus 项目,管理扩展并执行基本的构建和开发任务
- 在一个新目录中创建一个新的应用程序项目:
bash
quarkus create app {{项目名称}}- 在实时编码模式下运行当前项目:
bash
quarkus dev- 运行应用程序:
bash
quarkus run- 在连续测试模式下运行当前项目:
bash
quarkus test- 向当前项目添加一个或多个扩展:
bash
quarkus extension add {{扩展名1 扩展名2 ...}}- 使用 Docker 构建容器镜像:
bash
quarkus image build docker- 将应用程序部署到 Kubernetes:
bash
quarkus deploy kubernetes- 更新项目:
bash
quarkus updatevue · 适用于 Vue.js 项目的多用途命令行接口
此命令也有关于其子命令的文件,例如:
build。 更多信息:https://cli.vuejs.org/guide/。
- 交互式地创建一个新的 Vue 项目:
bash
vue create {{项目名}}- 使用图形化界面创建一个新项目:
bash
vue uikitex · Kitex 是 Go RPC 框架 Kitex 框架提供的用于生成代码的一个命令行工具
目前,kitex 支持 thrift 和 protobuf 的 IDL,并支持生成一个服务端项目的骨架。 更多信息:https://www.cloudwego.io/docs/kitex/tutorials/code-gen/code_generation/#generate-code。
- 生成客户端代码,项目在
$GOPATH目录下:
bash
kitex {{路径/到/IDL文件.thrift}}- 生成客户端代码,项目不在
$GOPATH目录下:
bash
kitex -module {{github.com/xx-org/xx-name}} {{路径/到/IDL文件.thrift}}- 根据 protobuf IDL 文件生成客户端代码:
bash
kitex -type protobuf {{路径/到/IDL文件.proto}}- 生成服务端代码:
bash
kitex -service {{svc_name}} {{路径/到/IDL文件.thrift}}protoc · 解析 Google Protobuf .proto 文件并生成指定语言的输出
- 从
.proto文件生成 Python 代码:
bash
protoc --python_out={{路径/到/输出目录}} {{输入文件.proto}}- 从一个导入其他
.proto文件的.proto文件生成 Java 代码:
bash
protoc --java_out={{路径/到/输出目录}} --proto_path={{路径/到/导入搜索路径}} {{输入文件.proto}}- 生成多种语言的代码:
bash
protoc --csharp_out={{路径/到/c#_输出目录}} --js_out={{路径/到/js_输出目录}} {{输入文件.proto}}- 从
.proto文件将文本格式消息编码为协议消息:
bash
protoc < {{消息.txt}} --encode={{类型名称}} {{输入文件.proto}}- 从
.proto文件将协议消息解码为文本格式:
bash
protoc < {{消息.bin}} --decode={{类型名称}} {{输入文件.proto}}- 将协议消息解码为原始标签/值对:
bash
protoc < {{消息.bin}} --decode_rawyacc · 使用形式语法规范文件生成一个 LALR 解析器(使用 C 语言)
另请参阅:
bison。 更多信息:https://manned.org/yacc.1p。
- 创建一个包含 C 语言解析器代码的文件
y.tab.c,并编译语法文件以及所有值所需的常量声明。(只有在使用-d选项时,才会创建常量声明文件y.tab.h):
bash
yacc -d {{路径/到/grammar_file.y}}- 编译一个包含解析器描述的语法文件,以及报告由于语法中的歧义导致的冲突:
bash
yacc -d {{路径/到/grammar_file.y}} -v- 编译一个语法文件,并用
prefix代替y作为输出文件名前缀:
bash
yacc -d {{路径/到/grammar_file.y}} -v -b {{前缀}}zola · 一个静态站点生成器,一个二进制文件内包含所有功能
更多信息:https://www.getzola.org/documentation/getting-started/cli-usage/。
- 在指定目录下创建 Zola 使用的目录结构:
bash
zola init {{我的站点}}- 在删除
public目录后构建整个站点:
bash
zola build- 将整个站点构建到另一个目录中:
bash
zola build --output-dir {{路径/到/输出_目录}}/- 使用本地服务器构建并服务站点(默认是
127.0.0.1:1111):
bash
zola serve- 构建所有页面,就像构建命令一样,但不将结果写入磁盘:
bash
zola check迁移、转换与分析已有源码
2to3 和 Babel 转换语言源码;jadx 从 Android 程序反编译,各自输入格式不同。
2to3 · 自动将 Python 2 代码转换成 Python 3
自 3.11 起,该模块已被弃用,并自 3.13 起被移除。 参考请见:https://github.com/python/cpython/blob/8d42e2d915c3096e7eac1c649751d1da567bb7c3/Doc/whatsnew/3.13.rst?plain=1#L188。 更多信息:https://manned.org/2to3。
- 显示将执行的变动但不执行(dry-run):
bash
2to3 {{路径/到/文件.py}}- 将 Python 2 文件转化为 Python 3:
bash
2to3 {{[-w|--write]}} {{路径/到/文件.py}}- 将 Python 2 语言特性转化为 Python 3:
bash
2to3 {{[-w|--write]}} {{路径/到/文件.py}} {{[-f|--fix]}} {{raw_input}} {{[-f|--fix]}} {{print}}- 除了某个语言特性外将所有其他的 Python 2 语言特性转化为 Python 3:
bash
2to3 {{[-w|--write]}} {{路径/到/文件.py}} {{[-x|--nofix]}} {{has_key}} {{[-x|--nofix]}} {{isinstance}}- 列出 Python 2 所有可转化为 Python 3 的语言特性:
bash
2to3 {{[-l|--list-fixes]}}- 将某一文件夹的所有 Python 2 文件转化为 Python 3:
bash
2to3 {{[-o|--output-dir]}} {{路径/到/Python 3 目录}} {{[-W|--write-unchanged-files]}} {{[-n|--nobackups]}} {{路径/到/Python 2 目录}}- 使用多线程运行 2to3:
bash
2to3 {{[-j|--processes]}} {{4}} {{[-o|--output-dir]}} {{路径/到/Python 3 目录}} {{[-w|--write]}} {{[-n|--nobackups]}} --no-diffs {{路径/到/Python 2 目录}}babel · 一款 JavaScript 的编译器,将下一代 ES 语法转换为兼容语法
- 转编译指定文件到标准输出:
bash
babel {{路径/到/文件}}- 转编译指定文件,输入为特定文件:
bash
babel {{路径/到/输入文件}} --out-file {{路径/到/输出文件}}- 监听文件变动触发转编译:
bash
babel {{路径/到/输入文件}} --watch- 转编译整个目录下的 js 文件:
bash
babel {{路径/到/输入文件目录}}- 跳过指定目录下指定文件的编译(多文件使用英文逗号“,”分隔):
bash
babel {{路径/到/输入文件目录}} --ignore {{被忽略文件}}- 转编译后,执行压缩:
bash
babel {{路径/到/输入文件}} --minified- 使用预设值:
bash
babel {{路径/到/输入文件}} --presets {{预设项}}- 输出所有可用的选项:
bash
babel --helpjadx · Dex 到 Java 的反编译器
将 Android Dex 和 APK 文件生成 Java 源代码。 更多信息:https://github.com/skylot/jadx#usage。
- 将一个 Dex 文件反编译到一个目录中:
bash
jadx {{路径/到/文件}}- 将一个 Dex 文件反编译到一个特定目录中:
bash
jadx {{[-d|--output-dir]}} {{路径/到/目录}} {{路径/到/文件}}继续阅读
- 文件与文本处理完整实践与解答
- 文件与文本处理上手与对象
- 文件与文本处理任务与配置