- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 .bat 脚本试图在最后启动 Windows 服务。
:start_wildfly
echo.
set /p wildfly_service_name="Enter Wildfly service name: "
echo INFO: Starting %wildfly_service_name%...
echo.
call net start "%wildfly_service_name%"
我希望能够解释 net start
的结果尝试让我的脚本在失败时采取适当的操作(例如,如果服务已经在运行,请重新启动它。如果服务名称无效,如果用户没有足够的名称,请再次提示输入名称特权,退出)。
问题是 NET 命令不返回记录的 Win32_Service class codes .
它确实会在控制台上显示错误,但是:
The requested service has already been started.
More help is available by typing NET HELPMSG 2182.
参见 http://ss64.com/nt/net_service.html获取错误列表。
不幸的是,errorlevel
变量总是 2
在这些错误情况下,所以我不能依赖它。
我现在要做的是运行 FIND
关于 NET
的输出命令,搜索特定的错误代码并根据它们采取行动。
net start Wildfly 2>&1 | FIND "2182"
if %errorlevel% equ 0 goto service_already_running
因此,FIND
的结果存储在 errorlevel
我可以检查一下 FIND
是否通过检查是否成功 errorlevel
是 0。这行得通。
现在,当我想检查多个错误代码时,问题就来了。例如,我不知道如何扩展上面的代码来检查“2185”,并在这种情况下转到不同的标签。
我现在正尝试存储 NET
的全部结果命令到变量中,然后运行 FINDSTR
在那个变量上。
setlocal EnableDelayedExpansion
set "output_cnt=0"
for /F "delims=" %%f in ('dir /b') do (
set /a output_cnt+=1
set "output[!output_cnt!]=%%f"
)
for /L %%n in (1 1 !output_cnt!) DO echo !output[%%n]!
这应该存储并回显输出的每一行,但是最后一行似乎没有做任何事情。
然后我还发现了一些应该在变量中搜索并返回是否找到该字符串的代码:
echo.%output%|findstr /C:"2182" >nul 2>&1 && echo Found || echo Not found.
虽然我没有运气把它们放在一起。我只想能够解释 NET START <SERVICE>
的结果并根据结果跳转到某些标签。
最佳答案
net start
尝试的结果so that I can have my script take the appropriate action if it fails (e.g. if the service is already running, restart it. If the service name is invalid, re-prompt for the name again, if the user doesn't have sufficient privileges, exit).
像您已经在做的那样启动服务:
net start "%wildfly_service_name%"
现在检查服务的状态。
有两种方法可以做到这一点。
再次使用net start
查看服务是否正在运行:
net start | find "%wildfly_service_name%" > nul
if errorlevel 1 echo The service is not running
使用sc
(服务控制)检查服务状态:
SC query %wildfly_service_name% | find "STATE" | find "STOPPED"
或者
sc query %wildfly_service_name% | find "STATE" | find "RUNNING"
如果未找到文本,以上两个语句将返回 %errorlevel%
= 1
。
关于windows - 从批处理脚本启动 Windows 服务并根据结果采取适当的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40187380/
我的类有一个 foo 方法和一个 main 方法,其中有一些变量和一个 print 语句。 public static boolean foo(int x, boolean b) { if (
我正在尝试对每几列取行平均值。这是一个示例数据集。 d = {'2000-01': range(0,10), '2000-02': range(10,20), '2000-03': range(10,
在 Nsight Visual Studio 中,我们将有一个图表来呈现“已采取”、“未采取”和“分歧”分支的统计信息。我对“不采取”和“分歧”之间的区别感到困惑。例如 kernel() { if
在 Nsight Visual Studio 中,我们将有一个图表来呈现“已采取”、“未采取”和“分歧”分支的统计信息。我对“不采取”和“分歧”之间的区别感到困惑。例如 kernel() { if
int main() { long int i,t,n,q[500],d[500],s[500],res[500]={0},j,h; scanf("%ld",&t); whil
我在 Linux 上使用 racket v6.5 repl 并尝试运行流教程中的 take 函数示例 https://docs.racket-lang.org/functional-data-stru
tl;博士无法在 ggpairs 中获得独立的图例(描述整个情节的常用颜色)令我满意。 对不起,长度。 我正在尝试使用 GGally::ggpairs 绘制(下三角形)对图(用于绘制各种绘图矩阵的扩展
几个月前我问过this question 。我想添加一个具有不同背景的相同 div。我想知道为什么 jQuery 在第二个 div 中不起作用?我发现仅当我单击第二个 div 中的小图像时,图像才会在
引用Performing a right join in django ,当我尝试类似的方法时(字段略有不同): class Student: user = ForeignKey(User)
所以我使用带有 Action Sheet 样式的 UIAlertController 来显示两个选项,一个用于取消操作,另一个用于删除数据。按钮工作正常,删除按钮工作,操作表关闭。我的问题是,在后台从
我有一个列表,其中每个单元格都是一个可放置的对象,可以接受某个类的可拖动对象。该表的边框是可见的,但我不希望固定大小的单元格着色且可见,这对我来说很难看。当我拖动一个可拖动对象与一个单元格相交时,该单
我有一个 RDD,它是通过读取一个大小约为 117MB 的本地文本文件形成的。 scala> rdd res87: org.apache.spark.rdd.RDD[String] = MapPart
如果我们有 n 级台阶并且我们可以一次上 1 或 2 级台阶,则台阶数和攀登台阶的方式之间存在斐波那契关系。当且仅当我们不认为 2+1 和 1+2 不同。 但是,情况不再如此,我们还必须添加第三个选项
var query = from ch in Client.wcf.context.CashHeading where ch.Id_customer == customern//cc.Id
我是一名优秀的程序员,十分优秀!