标签: scripting

Shell脚本:死于任何错误

假设shell脚本(/ bin/sh或/ bin/bash)包含多个命令.如果任何命令的退出状态失败,如何干净地使脚本终止?显然,可以使用if块和/或回调,但是有更清晰,更简洁的方法吗?使用&&也不是一个选项,因为命令可能很长,或者脚本可能有非常重要的东西,如循环和条件.

bash shell scripting

35
推荐指数
2
解决办法
3万
查看次数

在Powershell中将对象添加到对象数组中

我有这个脚本,我想$Target在每个foreach中调用的数组中添加一个对象.

foreach ($Machine in $Machines)
{
  $TargetProperties = @{Name=$Machine}  
  $TargetObject = New-Object PSObject –Property $TargetProperties
  $Target= @()
  $Target =  $TargetObject
}
Run Code Online (Sandbox Code Playgroud)

我知道它不起作用,因为$Target = $TargetObject它使它等于同一个对象.

如何附加到数组而不是替换?

arrays powershell scripting

35
推荐指数
2
解决办法
15万
查看次数

Python vs Groovy vs Ruby?(根据所列标准)

考虑下面列出的标准,您将使用Python,Groovy或Ruby中的哪一个?

  • 标准(10个中的重要性,10个是最重要的)
  • 丰富的API /库(例如数学,绘图,网络)(9)
  • 能够嵌入桌面(java/c ++)应用程序(8)
  • 易于部署(8)
  • 能够与DLL /共享库进行交互(7)
  • 能够生成GUI(7)
  • 社区/用户支持(6)
  • 便携性(6)
  • 数据库操作(3)
  • 语言/语义学(2)

ruby python scripting groovy

34
推荐指数
7
解决办法
3万
查看次数

以编程方式一步提取tar.gz(在7zip的Windows上)

问题:我希望能够一步提取tar.gz文件.这使我的问题几乎 与这个问题相同:tar-gz的stackoverflow问题.

我的问题是几乎相同的,但不一样的,因为我想做到这一点,使用7zip的命令行(或类似的东西)一个bat文件或红宝石/的Perl/Python脚本内的窗口.

问题:这个看似简单的任务证明比第一次出现更具参与性.有没有人有一个脚本可以做到这一点?

scripting gzip 7zip tar archive

34
推荐指数
4
解决办法
5万
查看次数

如何将时间戳添加到STDERR重定向

在bash/ksh中我们可以为STDERR重定向添加时间戳吗?

例如myscript.sh 2> error.log

我想在日志上写一个时间戳.

shell scripting

34
推荐指数
4
解决办法
3万
查看次数

如何从Windows cmd.exe脚本获取日期和年份?

如何从Windows cmd脚本中获取当前的月份和年份?我需要将每个值都放入一个单独的变量中.

scripting cmd date

34
推荐指数
7
解决办法
13万
查看次数

如何读取文件并将其重定向到变量?

我有一个文件,上面写着一个字.我希望我的脚本将该单词放在变量中.

我怎样才能做到这一点?

linux shell scripting

34
推荐指数
2
解决办法
6万
查看次数

如果不被空间包围,为什么等于运算符不起作用?

我尝试了以下脚本

#!/bin/bash
var1="Test 1" 
var2="Test 2"
if [ "$var1"="$var2" ] 
  then 
    echo "Equal" 
  else 
    echo "Not equal"
fi
Run Code Online (Sandbox Code Playgroud)

它给了我Equal.虽然它应该印刷Not equal

只有当我在=其周围插入空间时才能按预期工作

if [ "$var1" = "$var2" ] 
Run Code Online (Sandbox Code Playgroud)

并打印 Not equal

为什么会这样?为什么"$var1"="$var2"不一样"$var1" = "$var2"?

而且,当我写作时if [ "$var1"= "$var2" ],它给了

line 4: [: Test 1=: unary operator expected
Run Code Online (Sandbox Code Playgroud)

它是什么意思?它如何期待一元运算符?

syntax bash shell scripting

34
推荐指数
2
解决办法
1万
查看次数

如何使用shell脚本在文件中附加几行文本

我想在我要用脚本创建的文件中写几行(5行或更多行).我可以做到这一点echo >> filename.但我想知道最好的方法是什么?

unix linux shell scripting

33
推荐指数
2
解决办法
4万
查看次数

如何在.tmux.conf中编写if语句为不同的tmux版本设置不同的选项?

我有一个.tmux.conf,我在安装了不同tmux版本的不同机器上使用.

我想根据tmux版本设置不同的鼠标选项.在一台机器上我有2.0另一个版本2.1.

我没有把他的意思弄清楚

if "[[(( $(tmux -V | cut -c 6-) < 2.1 ))]]" \
  "set -g mode-mouse on;" \
  "set -g mouse-resize-pane on;" \
  "set -g select-pane on;" \
  "set -g select-window on" "set -g mouse on"
Run Code Online (Sandbox Code Playgroud)

当我获取文件时

$ tmux source-file .tmux.conf

我收到这条消息

.tmux.conf:12: unknown command: set -g mouse-resize-pane on

我运行它的机器有版本2.1所以它不应该设置四个选项.

我想在运行tmux 2.0或更少时设置四个选项,或者在运行tmux 2.1时设置一个选项.

这个bash语句有效

$ tmux -V
tmux 2.1
$ if [[(( $(tmux -V | cut -c 6-) < 2.1 ))]];then echo …
Run Code Online (Sandbox Code Playgroud)

bash shell scripting if-statement tmux

33
推荐指数
6
解决办法
2万
查看次数

标签 统计

scripting ×10

shell ×6

bash ×3

linux ×2

7zip ×1

archive ×1

arrays ×1

cmd ×1

date ×1

groovy ×1

gzip ×1

if-statement ×1

powershell ×1

python ×1

ruby ×1

syntax ×1

tar ×1

tmux ×1

unix ×1