Skip to content
This repository was archived by the owner on Feb 3, 2023. It is now read-only.

Commit 1a7f5b9

Browse files
committed
adjust some cmd
1 parent 17fd588 commit 1a7f5b9

File tree

6 files changed

+44
-49
lines changed

6 files changed

+44
-49
lines changed

cmd/group.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@ var (
2323
Run: func(cmd *cobra.Command, args []string) {
2424
hostName := args[0]
2525
if groupDel != "" {
26-
host.Manager.DeleteHostGroups(hostName, strings.Split(groupDel, conf.SepGroupInCmd))
26+
host.Manager.DeleteHostGroups(hostName, strings.Split(groupDel, conf.SepInCmd))
2727
}
2828
if groupAdd != "" {
29-
host.Manager.AddGroup(hostName, strings.Split(groupAdd, conf.SepGroupInCmd))
29+
host.Manager.AddGroup(hostName, strings.Split(groupAdd, conf.SepInCmd))
3030
}
3131
if groupList {
3232
host.Manager.PrintGroup(hostName)

cmd/new.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ var (
2020
if len(args) == 1 {
2121
host.Manager.CreateNewHost(args[0], []string{})
2222
} else {
23-
host.Manager.CreateNewHost(args[0], strings.Split(args[1], conf.SepGroupInCmd))
23+
host.Manager.CreateNewHost(args[0], strings.Split(args[1], conf.SepInCmd))
2424
}
2525
},
2626
}

cmd/remove.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,23 @@
55
package cmd
66

77
import (
8+
"github.com/ingbyr/gohost/conf"
89
"github.com/ingbyr/gohost/host"
910
"github.com/spf13/cobra"
11+
"strings"
1012
)
1113

1214
var (
1315
removeGroup bool
1416
removeCmd = &cobra.Command{
1517
Use: "rm",
1618
Short: "Delete host or group",
19+
Args: cobra.ExactArgs(1),
1720
Run: func(cmd *cobra.Command, args []string) {
1821
if removeGroup {
19-
host.Manager.DeleteGroups(args)
22+
host.Manager.DeleteGroups(strings.Split(args[0], conf.SepInCmd))
2023
} else {
21-
host.Manager.DeleteHostsByNames(args)
24+
host.Manager.DeleteHosts(strings.Split(args[0], conf.SepInCmd))
2225
}
2326
},
2427
}

conf/const.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import (
66
)
77

88
const (
9-
SepGroupInFile = "_"
10-
SepGroupInCmd = ","
11-
TmpCombinedHost = ".tmp_combined"
9+
SepGroupInFile = "_"
10+
SepInCmd = ","
11+
TmpCombinedHost = ".tmp_combined"
1212
BaseHostFileName = "base"
1313
)
1414

host/manger.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ func (m *manager) CreateNewHost(name string, groups []string) {
171171
}
172172
}
173173

174-
func (m *manager) DeleteHostsByNames(hostNames []string) {
174+
func (m *manager) DeleteHosts(hostNames []string) {
175175
deleted := make([]string, 0)
176176
for _, hostName := range hostNames {
177177
if host, exist := m.Hosts[hostName]; exist {

readme.md

Lines changed: 32 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -4,81 +4,68 @@ Gohost is a simple host switcher tool supporting Linux and macOS.
44

55
**To modify the system host file gohost need running in admin mode, such as `sudo gohost`.
66

7+
78
## Usage
89

9-
### And new host file
10+
### Create new host file
1011

11-
`gohost new HOST_NAME GROUP_NAME_1 GROUP_NAME_2 ... `
12+
`gohost new HOST_NAME GROUP_NAME_1,GROUP_NAME_2,... `
1213

1314
For example
1415

1516
```shell
1617
# create a devHost host file which belongs to dev1 and dev2 group
17-
> gohost new devHost dev1 dev2
18+
> gohost new devHost dev1,dev2
1819
```
1920

2021
### Edit existed host file
21-
> Make sure `vim` is in system PATH
22+
23+
> Make sure **vim** is installed
2224
2325
`gohost edit HOST_NAME`
2426

2527

2628
### Delete existed host file
2729

28-
`gohost rm HOST_NAME`
30+
`gohost rm HOST_NAME_1,HOST_NAME_2,...`
2931

3032

31-
### List host
33+
### Delete existed group
3234

33-
`gohost ls [-a]`
35+
`gohost rm [-g|--group] GROUP_NAME_1,GROUP_NAME_2,...`
3436

35-
For example
3637

37-
```shell
38-
# List host group
39-
> gohost ls
40-
+-------+---------+
41-
| GROUP | HOSTS |
42-
+-------+---------+
43-
| dev1 | devHost |
44-
| dev2 | devHost |
45-
+-------+---------+
46-
47-
# List host
48-
> gohost ls -a
49-
+---------+------------+
50-
| HOST | GROUPS |
51-
+---------+------------+
52-
| devHost | dev1, dev2 |
53-
+---------+------------+
38+
### List host group
5439

55-
```
40+
`gohost ls`
5641

5742

58-
### Edit group
43+
### List host file
5944

60-
`gohost cg HOST_NAME [ -a | -d ] GROUP_NAME_1,GROUP_NAME_2...`
45+
`gohost ls [-a|--all]`
46+
47+
48+
### Add group for existed host
49+
50+
`gohost cg HOST_NAME [-a|--add] GROUP_NAME_1,GROUP_NAME_2...`
6151

6252
For example
6353

6454
```shell
6555
# add group dev3, dev4 for devHost
6656
> gohost cg devHost -a dev3,dev4
67-
added groups 'dev3, dev4'
68-
+---------+------------------------+
69-
| HOST | GROUPS |
70-
+---------+------------------------+
71-
| devHost | dev1, dev2, dev3, dev4 |
72-
+---------+------------------------+
57+
```
7358

59+
60+
### Remove group for existed host
61+
62+
`gohost cg HOST_NAME [-d|--delete] GROUP_NAME_1,GROUP_NAME_2...`
63+
64+
For example
65+
66+
```shell
7467
# remove group dev1 for devHost
7568
> gohost cg devHost -d dev1
76-
removed groups 'dev1'
77-
+---------+------------------+
78-
| HOST | GROUPS |
79-
+---------+------------------+
80-
| devHost | dev2, dev3, dev4 |
81-
+---------+------------------+
8269
```
8370

8471

@@ -87,6 +74,11 @@ removed groups 'dev1'
8774
`gohost use GROUP_NAME`
8875

8976

77+
### Display group but not apply to system host
78+
79+
`gohost use GROUP_NAME [-s|--simulate]`
80+
81+
9082
### Display current system host
9183

9284
`gohost sys`

0 commit comments

Comments
 (0)