问题标签 [automatic-variable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
857 浏览

powershell - 如何使用 $_ 自动变量调用 powershell 脚本块

什么有效 -

假设我有一个scriptblockSelect-Objectcmdlet 一起使用的。

这工作正常,我得到了预期的结果。

我正在尝试做的事情 -

但是,在稍后的代码中,我想重用scriptblock定义为$jobTypeSelector.

例如,我希望下面的代码采用$fooJob注意它是单个对象)作为下面的参数传递,并用于$_自动变量scriptblock并返回相同的结果,因为它在Select-Objectcmdlet 的上下文中执行时返回。

什么不起作用 -

它不像我预期的那样工作,我得到了空值。

我已经尝试过的-

  1. 我检查了,属性都设置正确,不是因为相关属性本身是空白或$null.

  2. 我在互联网上查看,似乎很难找到关于该主题的任何相关页面,但我最终找到了一个在稍微不同的上下文中接近解释该问题的页面——在 PowerShell 中调用脚本块。该博客没有直接回答我的问题,任何相关的解释只会导致一个非常丑陋的解决方案,在我看来很难阅读和维护。

问题 -

那么,scriptblock单个对象调用 a 的最佳方法是什么,它使用$_自动变量作为参数(而不是param块)

0 投票
1 回答
53 浏览

build - 无法在 makefile 中使用自动变量“$<”获取不同的依赖项值

我正在制作一次,它编译了我制作的一些排序算法。

我有这样的结构:

我的makefile是这样的:

[我使用 tiempo.h 库来测量时间,这就是我使用它的原因]

所以,当我用这个编译时,它会正确创建目标代码,但是在创建二进制文件时,自动变量'$<'只给我带来一个值,即“build/bubble_sort.o”,所以它创建相同的二进制文件,但名称不同,输出如下:

另外,如果您能给我一些构建 makefile 的提示、良好做法或告诉我可以做些什么来提高性能,我将不胜感激。

0 投票
1 回答
451 浏览

makefile - 先决条件中的目标目录,无需第二次扩展

让我们假设,我想打电话

这取决于 somepath/somefiles.c

到目前为止我创建的目标看起来像

但不起作用,因为像 $@ 这样的自动变量 在先决条件中不可用。

如果找到,我可以启用第二次扩展

这允许我在先决条件中使用 $@ ,但会破坏我的 ifeq 语句,这总是会导致第一个分支。如果我将 ifeq 更改为

它再次起作用,但我真的不明白为什么。

现在有两个问题:

A)除了启用第二次扩展以在我的先决条件中包含目标路径之外,还有其他方法吗?

B) 如果启用了第二个扩展,为什么该ifeq (,$(wildcard $@))语句总是导致第一个分支?

0 投票
2 回答
501 浏览

c++ - Makefiles:特定的“无输入文件”,自动变量

我是makefile的新手,他们让我很困惑。我有以下文件夹层次结构:

一个名为的文件夹lib包含两个文件夹:(include带文件mylib.h)和src(带文件mylib.cpp)。它还包含一个 Makefile,由于某种原因,它给了我一个错误。

完整的生成文件是:

错误是

但该文件存在。因此,make正在做奇怪的事情,导致它无法找到.cpp文件。

为了制作libmine.so,g++将不得不做一些事情mylib.o, 对于一个通用.o文件我已经写了一些代码行。

这就是我的想法:为了制作libmine.sog++将不得不对mylib.o. 因此,在 中,必须出现lib一个名为的文件。mylib.o使用通用%.0规则,该文件由mylib.cppinsrcmylib.hin组成include(因此是规则的第一行%.o)。该文件是使用生成g++的,它必须查找include其他头文件,mylib.o作为输出生成并编译src/mylib.cpp,但要-c保证生成.o文件。

显然,出了点问题,我无法弄清楚是什么。仅在 2 天前,我才知道 Makefile 是什么以及为什么要学习如何处理它们,所以我不是那么专家。

0 投票
1 回答
178 浏览

makefile - Makefile自动变量不转义文件名中的字符

我在 Makefile 中使用具有静态模式规则的自动变量,但我对带括号的文件名有疑问。括号没有为 shell 正确转义,我从 shell 收到语法错误:

有没有办法make自动转义文件名中的“坏”字符?我尝试过使用括号,例如$(<)and $(@),但似乎没有什么区别。

0 投票
2 回答
2979 浏览

powershell - 如何回显 $?工作?

我正在编写一些 PowerShell 脚本来进行一些构建自动化。我在这里找到了echo $? 根据前面的语句返回真或假。我刚刚发现 echo 是Write-Output的别名。写主机 $? 也有效。但是我还是不清楚这个$是怎么回事?作品。有人可以对这个说几句话吗。正在寻找回声 $? 在网上没有给我太多。

0 投票
1 回答
1973 浏览

c - Are global variables in C automatic variables?

I was studying ANSI C programming language and it says in introduction:

"Local variables are typically "automatic," or created anew with each invocation."

I'm guessing allocating and deallocating variables work with stack frame logic of Java. So are global variables automatic too? They would get in and out of stack frame much less than local variables since they are in the scope of the whole .c file.

0 投票
2 回答
11002 浏览

powershell - $PSScriptRoot 和 $MyInvocation 之间的功能差异

问题

我正在与 Jenkins 合作远程部署 PowerShell 脚本。因此,我试图弄清楚使用$PSScriptRootover$MyInvocation.MyCommand.Path获取当前脚本根目录是否会出现问题。

细节

一位同事顺便告诉我,使用$PSScriptRoot远程功能不是一个好主意,因为我偶尔会发现它在运行时由于某种原因不会返回预期值,即使它以前有效。但是,无法解释为什么会这样。

在我的研究中,我没有发现任何可以进一步解释这一点或避免此类问题的最佳实践方法是什么。我主要发现这两者基本上是可以互换的;但是,$PSScriptRoot只能PowerShell v3 或更高版本中使用。通过你们中的几个人的帮助,我也开始了解到,它$MyInvocation具有情境差异,可以根据范围和模块进行更改。但我仍然没有发现这是否或为什么会成为 PowerShell Remoting 的问题。

示例 001
所以我在 Jenkins 中有一个 PowerShell 脚本,它$PSScriptRoot用作查找我希望通过相对路径调用的脚本的方法。我能否依靠它来始终为所述脚本提供相同/预期的路径?

示例 002
使用由 Jenkins 启动的 PowerShell 脚本调用的 PowerShell 脚本,我是否能够期望$PSScriptRoot能够为我提供该脚本实际所在的路径,或者它会给我一个基于 Jenkins 的路径?

就个人而言,我希望两者都能$PSScriptRoot为我提供正在运行的脚本的实际物理位置,而不是根据调用它的初始脚本而改变的相对路径。

由于有了这种理解可以帮助我节省很多时间和头痛,我希望像你这样的程序员同行可以帮助我了解如果这是真的,以及为什么会发生这样的问题。

问题

我试图找出使用$PSScriptRoot是否会导致我在 PowerShell Remoting 中出现问题,从而使使用$MyInvocation更可行的选项?

0 投票
1 回答
564 浏览

bash - Powershell 相当于 bash 中的 $_

在 bash 中,要从最后一个命令中获取参数,我们调用$_. $_我已经搜索但在 PowerShell 中找不到与 bash 等效的内容?例子:

现在 bash 当前工作目录将是20171206,我正在尝试通过 PowerShell 实现相同的目标。

是否可以 ?

0 投票
2 回答
1927 浏览

powershell - 将参数作为数组传递给 PowerShell 函数

我试图弄清楚如何将多个字符串作为数组传递给 powershell 函数。

印刷

如何将具有 3 个值的数组传递给ArrayCount函数?为什么某些调用的计数为零?