Tag: 脚本

对shell脚本进行unit testing

几乎所有我多年来一直使用的产品都涉及到一定程度的shell脚本(或batch file,Windows上的PowerShell等)。 尽pipe我们用Java或C ++编写了大量的代码,但似乎总有一些集成或安装任务使用shell脚本可以更好地完成。 shell脚本因此成为交付代码的一部分,因此需要像编译代码那样进行testing。 有没有人有经验的一些shell脚本unit testing框架,如shunit2 ? 我现在主要对Linux shell脚本感兴趣, 我想知道testing工具如何复制其他xUnit框架的function和易用性,以及与CruiseControl或Hudson等连续构build系统集成是多么容易。

BASH复制除一个以外的所有文件

我想复制一个名为Default.png的文件除外的所有文件。 似乎有很多方法可以做到这一点。 什么似乎对你最有效?

networking中断后自动(或更容易)重新连接到屏幕会话

补充:我相信,现在这个问题包含在这个问题中: 完全透明地自动使用GNU Screen 另请参阅以下相关问题: https://superuser.com/questions/147873/ssh-sessions-in-xterms-freeze-for-many-minutes-whenever-they-disconnect 原始问题: 这将是很好,如果有一种方式SSH机器,并立即重新连接到一个特定的屏幕会话。 你可以这样做: laptop> ssh server.com screen -ls 它会显示server.com上可用的屏幕列表,如[1]: 123.pts-1 456.pts-2 然后你可能会尝试这样做: laptop> ssh server.com screen -dr pts-2 但是失败了,说“必须连接到terminal”。 你必须首先ssh,然后在server.com上执行“screen -dr pts-2”,如果你有一个脆弱的连接并断开很多,那么这是不好的。 您希望能够在笔记本电脑上使用简单的“向上箭头键”进行恢复。 (或者也许使它更自动化。) 对于这个问题,我有一个匪夷所思的解决scheme,我会作为答复发表意见,希望得到的结果是被遗忘而转移到正确的方式来解决这个问题。 脚注: 或者,更好的是,如果您使用“ screen -S foo ”和“ screen -S bar ”等名称创build了屏幕会话,那么您将得到一个更友好的列表,如: 123.foo 456.bar 并可以重新连接,例如“ screen -dr foo ”。 迷你屏幕教程,结合这个问题的答案: login到server.com并执行 screen -S foo 然后再也不会从该会话中注销。 要从其他地方重新连接,请执行 ssh […]

Python脚本标题

典型的标题应该是 #!/usr/bin/env python 但是我发现下面的代码在执行$python ./my_script.py这样的脚本时也是$python ./my_script.py #!/usr/bin/python #!python 这两个头文件有什么区别? 第二个问题可能是什么? 请同时讨论python解释器在PATH中的情况。 谢谢。

如何在PowerShell中为脚本创build自定义types?

我希望能够在我的一些PowerShell脚本中定义和使用自定义types。 例如,假设我需要一个具有以下结构的对象: Contact { string First string Last string Phone } 我将如何去创build这个,以便我可以像下面这样使用它: function PrintContact { param( [Contact]$contact ) "Customer Name is " + $contact.First + " " + $contact.Last "Customer Phone is " + $contact.Phone } 是这样的可能,甚至build议在PowerShell?

find两个文本文件每行一个项目之间的区别

我有两个文件: 文件1 dsf sdfsd dsfsdf 文件2 ljljlj lkklk dsf sdfsd dsfsdf 我想显示文件2中的内容,但不是文件1中的内容,所以文件3应该看起来像 ljljlj lkklk

脚本和程序之间的区别?

脚本和程序有什么区别? 大多数时候我听说脚本正在运行,这不是一个程序吗? 我有点困惑,有没有人可以详细说明这一点?

#!/ usr / bin / python3的用途

我已经注意到这在一些脚本语言,但在这个例子中,我使用Python。 在许多教程中,他们将从第一行的#!/usr/bin/python3开始。 我不明白为什么我们有这个。 操作系统不应该知道它是一个python脚本(显然是因为你正在引用它而被安装) 如果用户正在使用不是基于Unix的操作系统,该怎么办? 无论出于何种原因,该语言都安装在不同的文件夹中 用户有不同的版本。 特别是当它不是一个完整的版本号(如Python3与Python32) 如果有的话,我可以看到这打破了Python脚本,因为上面列出的原因。

将脚本function添加到.NET应用程序

我有一个用C#编写的小游戏。 它使用数据库作为后端。 这是一个交易卡游戏 ,我想实现卡的function作为一个脚本。 我的意思是我基​​本上有一个卡类实现的接口ICard ( public class Card056 : ICard ),它包含了被游戏调用的函数。 现在,为了使事物可维护/可修改,我希望将每张卡片的类作为数据库中的源代码,并在首次使用时进行基本编译。 所以,当我不得不添加/更换一张卡片时,我只是把它添加到数据库中,并告诉我的应用程序刷新,而不需要任何程序集的部署(特别是因为我们会谈论每张卡片1个程序集,这意味着数百个程序集) 。 那可能吗? 从源文件注册一个类,然后实例化它等 ICard Cards[current] = new MyGame.CardLibrary.Card056(); Cards[current].OnEnterPlay(ref currentGameState); 这个语言是C#,但是如果可以用任何.NET语言编写脚本,那么额外的奖励也是可以的。

是否有任何用于Bash脚本?

我刚刚完成大学二年级学生的第二年,所以缺乏“现实世界”的知识。 我第一年就学习了Java,继续使用Java,第二次学习了C语言和简单的Bash脚本。 今年夏天,我正在努力学习Perl(上帝帮助我)。 过去我已经涉猎了Python。 我的问题是,现在我们有非常可读的,非常可写的脚本语言,如Python,Ruby,Perl等,为什么有人写Bash脚本? 有什么我失踪? 我知道我的Linux机器有perl和python。 他们是不是无处不在? Bash中有没有比在其他一些地方更容易做到的事情?