gpt4 book ai didi

swift - 如何在 CLI 中使用 xcrun swift 传递参数?

转载 作者:行者123 更新时间:2023-11-28 09:11:50 27 4
gpt4 key购买 nike

安装 Xcode 后,我想在命令行中编译并运行一个 .swift 文件。明白了,这是可以做到的:

xcrun swift sayHello.swift

但是,我想在命令行中传递一个参数。

例如,在 sayHello.swift 中使用以下函数:

func sayHello(personName: String) -> String {
let greeting = "Hello, " + personName + "!"
return greeting
}

你如何传递参数,例如鲍勃?这看起来很有希望:

-D Specifies one or more build configuration options

xcrun swift -D sayHello(Bob) sayHello.swift

但是,这不是我所期望的。

最佳答案

您可以将任意字符串作为命令行参数传递给进程,但是您不能期望它们作为代码(如sayHello(Bob))执行。

在 Swift 中,Process.arguments 是一个包含所有命令行的字符串数组给过程的论据。第一个元素(在索引 0 处)是可执行文件本身的路径,以及额外的命令行参数从索引 1 开始:

// sayHello.swift

func sayHello(personName: String) -> String {
let greeting = "Hello, " + personName + "!"
return greeting
}

let args = Process.arguments
for i in 1 ..< args.count {
let name = args[i]
let greeting = sayHello(name)
println(greeting)
}

例子:

$ xcrun swift sayHello.swift Peter Paul MaryHello, Peter!Hello, Paul!Hello, Mary!

关于swift - 如何在 CLI 中使用 xcrun swift 传递参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29137377/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com