package main import ( "fmt" "os" "strconv" ) func main() { if len(os.Args) < 2 { fmt.Println("Usage: add <author> | list | read <id>") return } lib, _ := LoadLibrary("books.json") switch os.Args[1] { case "add": if len(os.Args) < 4 { fmt.Println("Usage: add <title> <author>") return } lib.Add(os.Args[2], os.Args[3]) lib.Save("books.json") fmt.Println("Buch hinzugefügt.") case "list": for _, b := range lib.Books { status := " " if b.Read { status = "✓" } fmt.Printf("[%s] %d: \"%s\" by %s\n", status, b.ID, b.Title, b.Author) } case "read": if len(os.Args) < 3 { fmt.Println("Geben Sie eine Buch-ID ein.") return } id, err := strconv.Atoi(os.Args[2]) if err != nil { fmt.Println("Ungültige ID-Eingabe.") return } lib.MarkRead(id) lib.Save("books.json") fmt.Println("Buch als gelesen markiert.") } }