C# 借助CommandLine 写命令行工具 在数据库中创建job
首先需要用到 CommandLine.dll
提供两个下载链接,云盘是我自己上传的,也就是我在用的
http://commandline.codeplex.com/
https://pan.baidu.com/s/1nX7hc_xrdGn2RjR-HuXnAQ
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
先创建Option类,这个类定义了一些可以接受的参数
using CommandLine;
using CommandLine.Text; namespace Commandline
{
class Options
{
/// <summary>
/// 前面的参数用-* 后面的用--***后面会说
/// </summary>
[Option('n', "writeNO", Required = false, HelpText = "Use this option to write a")]
public int Write_No { get; set; } [Option('a', "writeA", Required = false, HelpText = "Use this option to write b")]
public bool Write_A { get; set; } [Option('b', "writeB", Required = false, HelpText = "Use this option to write c")]
public bool Write_B { get; set; } [Option('c', "writeC", Required = false, HelpText = "Use this option to write d")]
public bool Write_C { get; set; } [Option('s', "writestr", Required = false, HelpText = "Use this option to write e")]
public string Write_str { get; set; } [ParserState]
public IParserState LastParserState { get; set; } private string _heading;
public Options()
{
this._heading = "V*o***S*nc";
}
[HelpOption]
public string GetUsage()
{
return HelpText.AutoBuild(this,
(HelpText current) =>
{
current.Heading = this._heading;
current.Copyright = new CopyrightInfo("S**pe I*t****l Team", );
HelpText.DefaultParsingErrorsHandler(this, current);
}); //return HelpText.AutoBuild(this,
//(HelpText current) =>
//HelpText.DefaultParsingErrorsHandler(this, current));
//这个就不要_heading了
}
}
}
在主函数中测试一下:
using System; namespace Commandline
{
class Program
{
static void Main(string[] args)
{
var option = new Options();
try
{
if (CommandLine.Parser.Default.ParseArguments(args, option))
{
if (option.Write_No != )
{
Write(option.Write_No.ToString());
}
if (option.Write_A)
{
Write("A");
}
if (option.Write_B)
{
Write("B");
}
if (option.Write_C)
{
Write("C");
}
if (option.Write_str!=null)
{
Write(option.Write_str);
}
}
}
catch (Exception e)
{
throw;
}
Console.ReadKey();
} private static void Write(string str)
{
Console.WriteLine("Command Line tell me to write {0}", str);
}
}
}
现在开始调式:
以下面的参数为例
[Option('s', "writestr", Required = false, HelpText = "Use this option to write e")]
public string Write_str { get; set; }
参数填写 -s hello 或者 --writestr "hello"
前面的用-* 后面的参数用--*** 数字或者string可加“”也可不加
参数的先后顺序不影响程序的执行顺序,可对照下面的输出结果
在solution右击,添加如下参数
参数有误会出现:
上面的参数输出结果:
如果有涉及到对数据库的操作 在数据库中创建job 给出相应参数 来实现自动run
在Jobs上右击new一个job
填写相应的Name 和 Description
将所写程序的debug下的文件拷贝到数据库所在机器或者服务器并记录该路径
Step的操作按照下图进行操作:
制定一个计划来跑这个job,按照下图进行操作
Game Over
C# 借助CommandLine 写命令行工具 在数据库中创建job的更多相关文章
- Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,将全部来与官网 我猜去全部机翻+个人 ...
- dotnet 使用 System.CommandLine 写命令行程序
在写命令行程序的时候,会遇到命令行解析的问题,以及参数的使用和规范化等坑.现在社区开源了命令行项目,可以帮助小伙伴快速开发命令行程序,支持自动的命令行解析和规范的参数 我写过一篇关于命令行解析的博客C ...
- 如何用Node编写命令行工具
0. 命令行工具 当全局安装模块之后,我们可以在控制台下执行指定的命令来运行操作,如果npm一样.我把这样的模块称之为命令行工具模块(如理解有偏颇,欢迎指正) 1.用Node编写命令行工具 在Node ...
- 如何用node编写命令行工具,附上一个ginit示例,并推荐好用的命令行工具
原文 手把手教你写一个 Node.js CLI 强大的 Node.js 除了能写传统的 Web 应用,其实还有更广泛的用途.微服务.REST API.各种工具……甚至还能开发物联网和桌面应用.Java ...
- 用 nodejs 写一个命令行工具 :创建 react 组件的命令行工具
用 nodejs 写一个命令行工具 :创建 react 组件的命令行工具 前言 上周,同事抱怨说 react 怎么不能像 angular 那样,使用命令行工具来生成一个组件.对呀,平时工作时,想要创建 ...
- x264源代码简单分析:x264命令行工具(x264.exe)
===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...
- react.js 之 create-react-app 命令行工具系统讲解
react.js 教程之 create-react-app 命令行工具系统讲解 快速开始 npm install -g create-react-app create-react-app my-app ...
- 命令行工具--curl
目录 命令:curl 一.简介 二.使用案例 1.基本用法 2.保存访问的网页 3.测试网页返回值 4.指定proxy服务器以及其端口 5.cookie 6.模仿浏览器 7.伪造referer(盗链) ...
- HttpRepl 互操作的 RESTful HTTP 服务调试命令行工具
今天早上曽根セイラ告诉我一个好用的工具 HttpRepl 这是一个可以在命令行里面对 RESTful 的 HTTP 服务进行路由跳转和访问的命令行工具.可以使用 cd 这个命令和像文件跳转已经跳转到下 ...
随机推荐
- 为U盘装备Ubuntu工作学习两不误
题记: 在上一篇文章中,我介绍了让Ubuntu 10.04完美支持Thinkpad小红点Trackpoint.看上去,显得有些不痛不痒,实际上有些同学会因为小红点中键不能正常使用,而放弃在Th ...
- python读取文件用b模式读取
f = open('aaa','rb') 返回的是字节 字符串编码 python中所有的字符串编码为Unicode,如果从一个文件读取字符串,那么该字符串的编码就是该文件的编码. f.tell( ...
- 初探网络流:dinic/EK算法学习笔记
前记 这些是初一暑假的事: "都快初二了,连网络流都不会,你好菜啊!!!" from 某机房大佬 to 蒟蒻我. flag:--NOIP后要学网络流 咕咕咕------------ ...
- SpringMVC架构&组件&执行流程
SpringMVC架构: 组件: DIspatcherServlet:前端控制器.相当于mvc模式的c,是整个流程控制的中心,负责调用其他组件处理用户的请求,降低了组件之间的耦合性. HandlerM ...
- 【转】iPhone/IOS使用Fiddler抓包配置
原文链接:https://blog.csdn.net/weixin_39198406/article/details/81123716 1. 安装 安装Fiddler软件2. 配置2.1 端口 点击 ...
- 新闻网大数据实时分析可视化系统项目——12、Hive与HBase集成进行数据分析
(一)Hive 概述 (二)Hive在Hadoop生态圈中的位置 (三)Hive 架构设计 (四)Hive 的优点及应用场景 (五)Hive 的下载和安装部署 1.Hive 下载 Apache版本的H ...
- Linux centosVMware Vim介绍、vim颜色显示和移动光标、vim一般模式下移动光标、vim一般模式下复制、剪切和粘贴
一.Vim介绍 vim 是一款功能强大的文本编辑器,是vi的升级版,带有颜色显示, 默认有三种模式:一般模式, 命令模式, 编辑模式 安装Vim [root@davery ~]# vim /et ...
- 在github上保存vscode的配置(后续重新安装vscode时,可以十分方便地从github上下载安装这个保存的配置)
1 安装拓展 Settings Sync 在 VSCode 拓展中搜索 Settings Sync 并安装,安装完成后,重启 2 设置 Github Person Access Token 进入这个页 ...
- 为什么mysql having的条件表达式可以直接使用select后的别名?
SQL语句的语法顺序: FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> DISTINCT -> UNION -&g ...
- Wincc V7.3SE安装截图
打开某个工程出错,能力所限,找不到问题,没能解决