|
8 | 8 | "math" |
9 | 9 | "net" |
10 | 10 | "os" |
| 11 | + "os/exec" |
11 | 12 | "os/signal" |
12 | 13 | "time" |
13 | 14 |
|
@@ -500,6 +501,54 @@ func main() { |
500 | 501 | } |
501 | 502 | }() |
502 | 503 |
|
| 504 | + //Hostnameを取得する |
| 505 | + cmd := exec.Command("hostname") |
| 506 | + out, err := cmd.Output() |
| 507 | + if err != nil { |
| 508 | + panic(err) |
| 509 | + } |
| 510 | + fmt.Println(string(out)) |
| 511 | + |
| 512 | + //もし初期値のraspberrypiだったら |
| 513 | + if string(out) == "raspberrypi\n" { |
| 514 | + //UNIX時間の下5桁を取得する |
| 515 | + unixtime := time.Now().UnixNano() |
| 516 | + log.Println("Unixtime is " + fmt.Sprintf("%d", unixtime)) |
| 517 | + unixtime = unixtime % 100000 |
| 518 | + |
| 519 | + //Hostnameをracoon-XXXXXに変更する |
| 520 | + hostname := "racoon-" + fmt.Sprintf("%05d", unixtime) |
| 521 | + |
| 522 | + log.Println("Change Hostname To " + hostname) |
| 523 | + //Change Hostname |
| 524 | + //hostnamectl set-hostname raspberrypi コマンド実行 |
| 525 | + cmd = exec.Command("hostnamectl", "set-hostname", hostname) |
| 526 | + cmd.Run() |
| 527 | + |
| 528 | + //再起動 |
| 529 | + log.Println("=====Reboot=====") |
| 530 | + |
| 531 | + buzzer := rpio.Pin(12) |
| 532 | + buzzer.Mode(rpio.Pwm) |
| 533 | + buzzer.Freq(1175 * 64) |
| 534 | + buzzer.DutyCycle(16, 32) |
| 535 | + time.Sleep(500 * time.Millisecond) |
| 536 | + buzzer.DutyCycle(0, 32) |
| 537 | + buzzer.Freq(1396 * 64) |
| 538 | + buzzer.DutyCycle(16, 32) |
| 539 | + time.Sleep(500 * time.Millisecond) |
| 540 | + buzzer.DutyCycle(0, 32) |
| 541 | + buzzer.Freq(1760 * 64) |
| 542 | + buzzer.DutyCycle(16, 32) |
| 543 | + time.Sleep(500 * time.Millisecond) |
| 544 | + buzzer.DutyCycle(0, 32) |
| 545 | + |
| 546 | + //reboot コマンド実行 |
| 547 | + cmd = exec.Command("reboot") |
| 548 | + cmd.Run() |
| 549 | + |
| 550 | + } |
| 551 | + |
503 | 552 | //MyIDで指定したロボットIDを取得 |
504 | 553 | var MyID uint32 = uint32(diptoid) |
505 | 554 |
|
|
0 commit comments