首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我们可以用PowerShell编写star程序吗?

我们可以用PowerShell编写star程序吗?
EN

Stack Overflow用户
提问于 2019-03-05 00:29:37
回答 2查看 219关注 0票数 1

我是power-shell的新手,正在练习一些程序。如果我可以用Powershell编写*程序,请告诉我。我知道它是一个脚本工具,用于系统管理。为了掌握基础知识,我正在尝试这个脚本。

下面是我写的代码:

代码语言:javascript
复制
cls
for ($i = 1; $i -le 4 ;$i++)
{
for ($j = 1; $j -le $i; $j++){
write-host "*"
}

write-host "`n"
}

所需输出:

*

**

***

*

我得到的输出如下:

有人能帮我这个忙吗。我们将非常感谢您的帮助。

已解决

($i = 1;$i -le 4 ;$i++) { ($j = 1;$j -le 4;$j++)的日志服务{写主机"*“-NoNewline }写主机"`n”}

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-05 01:03:55

你发布的解决方案对我不起作用。皱眉它给出了4行4个星号,每行之间用一个空行隔开。

此版本使用foreach循环,迭代所需的行数,绘制一条使用字符串乘法构建的行,插入一个空行,然后对行计数中的每一行重复此操作。

代码语言:javascript
复制
$LineCount = 8
$LineChar = '*'

foreach ($LC_Item in 1..$LineCount)
    {
    Write-Host ($LineChar * $LC_Item)
    Write-Host
    }

输出...

代码语言:javascript
复制
*

**

***

****

*****

******

*******

********
票数 2
EN

Stack Overflow用户

发布于 2019-03-05 02:41:03

这是这项任务的大量代码。PowerShell允许许多方法来完成相同或相似的任务。至于你的努力,这可以很容易地简化为一个线性。不需要写主机。

代码语言:javascript
复制
# Use the range operator, pipe to a ForEach with a string repeat '*' X times per the range number passed in.

1..8 | ForEach{('*')*$PSItem}

# Results
*
**
***
****
*****
******
*******
********

包含空行的更新。

嘿,李,是的,简明扼要,我错过了所需的空行。很容易就能修复...

代码语言:javascript
复制
# Use the range operator, pipe to a ForEach with a string repeat '*' X times per the range number passed in and a blank line for each pass
1..8 | ForEach{('*')*$PSItem + "`n"}

# Results

*

**

***

****

*****

******

*******

********
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54987517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档