如何判断是否正在处理Powershell cmdlet中的最后一行输入?

如何判断是否正在处理Powershell cmdlet中的最后一行输入?,shell,powershell,Shell,Powershell,我想知道如何测试我当前是否在Powershell中处理commandlet中的最后一行输入(这可能不是正确的术语) 我在一个日志文件中有一系列SQL语句,我想构造它们的并集。目前我有(在一行上,但为了便于阅读,我在这里将它们分开显示) 但是,这会导致输出中出现多余的联合。因此,如果当前行是最后一行,然后不附加字符串“UNION”,我想在cmdlet中进行测试(我认为调用%{…}) 这可能吗 PS-这是一个简化的示例,在我的实际情况中,我必须执行一些grepping和substring来提取查询

我想知道如何测试我当前是否在Powershell中处理commandlet中的最后一行输入(这可能不是正确的术语)

我在一个日志文件中有一系列SQL语句,我想构造它们的并集。目前我有(在一行上,但为了便于阅读,我在这里将它们分开显示)

但是,这会导致输出中出现多余的
联合。因此,如果当前行是最后一行,然后不附加字符串“UNION”,我想在cmdlet中进行测试(我认为调用
%{…}

这可能吗



PS-这是一个简化的示例,在我的实际情况中,我必须执行一些grepping和substring来提取查询。

如果您想要获取一系列字符串并将它们与它们之间的某个内容合并,最好使用
-join
操作符

例如


结果是
a:b:c

当输入以标准形式输入时,如何使用
join
?例如-
(cat sql.log)-join“nUNIONn”
echo "SELECT * FROM ( " > union.log
cat sql.log | %{$_ + "`n UNION `n"} >> union.log
echo " ) AS qwerty " >> union.log
@('a', 'b', 'c') -join ':'