Lettura degli argomenti della riga di comando

Swift:
Lettura degli argomenti della riga di comando

How to:

Swift rende la lettura degli argomenti da riga di comando un gioco da ragazzi. Ecco come:

// main.swift
import Foundation

// Accedere agli argomenti della riga di comando
let arguments = CommandLine.arguments

// Stamparli uno per uno
for arg in arguments {
    print(arg)
}

// Usare gli argomenti per fare qualcosa di utile
if arguments.count > 1 {
    print("Ciao, \(arguments[1])!")
} else {
    print("Hey! Mi aspettavo un nome da salutare.")
}

Esempio di output se esegui swift main.swift Giovanni nel terminale:

/path/to/main.swift
Giovanni
Ciao, Giovanni!

Deep Dive

Prima che Swift comparisse sulla scena, Objective-C era il re di Cupertino. Tuttavia, dalle ceneri è emerso Swift, con un modo più accessibile per accedere agli argomenti della riga di comando. In C, sareste stati accolti da int main(int argc, char * argv[]). Alternativamente, le librerie come Cocoa in Objective-C nascondevano questi dettagli dietro classi di app alto livello.

In Swift, CommandLine è un’enumerazione piuttosto diretta che fornisce accesso agli argomenti come un array di stringhe. È importante notare che il primo argomento è sempre il percorso eseguibile del programma. Questo differisce da altri linguaggi come Python, dove potresti usare sys.argv per ottenere gli argomenti e il primo argomento è il comando utilizzato per eseguire lo script.

Sebbene l’approccio di Swift sia semplice, per applicazioni complesse potrebbe essere necessario parse più sofisticati. In questi casi, si potrebbe ricorrere a framework di terze parti come Swift Argument Parser per una gestione robusta degli argomenti della riga di comando.

See Also