teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

変更

2018/07/20 03:09

投稿

yajin
yajin

スコア75

title CHANGED
File without changes
body CHANGED
@@ -16,50 +16,22 @@
16
16
  という具合になるので、
17
17
  ユーザの登録結果表示が対話の邪魔になってしまいます。
18
18
 
19
- どのようにしたらよいでしょうか。1つのユーザは登録できますが、2つ目以降うまくいっていないようです。
19
+ どのようにしたらよいでしょうか。
20
20
  ユーザの登録結果表示を無視するexpectコマンドで対話を無視したりpdbeditのユーザ登録結果表示を非表示するオプションがあれば伺いたく思っています。
21
21
 
22
22
  ### 発生している問題・エラーメッセージ
23
+ 表面上はエラーがでてこず、困っています。
24
+ 個別に
25
+ pdbedit -a ユーザ名
26
+ パスワード
27
+ パスワード
23
28
 
24
- ```
25
- # /home/hoge/sambauser.sh
26
- invalid command name "for((i"
27
- while executing
28
- "for((i = 0"
29
+ と入力するとパスワード変更はできます。
29
30
 
30
- ```
31
+
31
- とでます。
32
32
  ### ソースコード
33
33
 
34
- ```bash
35
- #!/bin/bash
36
34
 
37
- array=(
38
- "user01"
39
- "hogehoge"
40
- "user02"
41
- "fugafuga"
42
- )
43
-
44
-
45
- expect -c "
46
-
47
- for((i = 0; i < ${#array[@]}; i++)) {
48
- spawn pdbedit -a ${array[i]}
49
- let i++
50
- expect \"new password:\"
51
-
52
- send \"${array[i]}\n\"
53
- expect \"retype new password:\"
54
- send \"${array[i]}\n\"
55
- }
56
-
57
- expect "
58
-
59
- ```
60
-
61
- 追記:
62
- これを以下のように直したらエラーはでなくなりましたが、1こめの認証はとおるものの、2こめ以降の認証がとおらないようです。
63
35
  ```bash
64
36
  #!/bin/bash
65
37
 

2

修正

2018/07/20 03:09

投稿

yajin
yajin

スコア75

title CHANGED
File without changes
body CHANGED
@@ -64,9 +64,9 @@
64
64
  #!/bin/bash
65
65
 
66
66
  array=(
67
- "weba01"
67
+ "user01"
68
68
  "hogehoge"
69
- "weba02"
69
+ "user02"
70
70
  "fugafuga"
71
71
  )
72
72
 

1

追記

2018/07/19 09:45

投稿

yajin
yajin

スコア75

title CHANGED
File without changes
body CHANGED
@@ -6,7 +6,19 @@
6
6
 
7
7
  で入力したあと、パスワードを2回聞かれるのでexpectで対話対応をするシェルスクリプトを書いています。
8
8
 
9
+ 追記:
10
+ 動くようにはなったのですが、ユーザ登録がうまくいかないようです。
11
+ 理由はpdbedit -a ユーザ名
12
+ パスワード
13
+ パスワード
14
+ ユーザの登録結果表示
9
15
 
16
+ という具合になるので、
17
+ ユーザの登録結果表示が対話の邪魔になってしまいます。
18
+
19
+ どのようにしたらよいでしょうか。1つのユーザは登録できますが、2つ目以降うまくいっていないようです。
20
+ ユーザの登録結果表示を無視するexpectコマンドで対話を無視したりpdbeditのユーザ登録結果表示を非表示するオプションがあれば伺いたく思っています。
21
+
10
22
  ### 発生している問題・エラーメッセージ
11
23
 
12
24
  ```
@@ -46,11 +58,42 @@
46
58
 
47
59
  ```
48
60
 
61
+ 追記:
62
+ これを以下のように直したらエラーはでなくなりましたが、1こめの認証はとおるものの、2こめ以降の認証がとおらないようです。
49
- ### 試したこと
63
+ ```bash
64
+ #!/bin/bash
50
65
 
66
+ array=(
67
+ "weba01"
51
- 対話型の書き方はどのようにしたらよいのでしょうか。
68
+ "hogehoge"
69
+ "weba02"
52
- forの中に入れるべきなのか、外にするべきなのかがよくわかっていませんん。
70
+ "fugafuga"
71
+ )
53
72
 
73
+
74
+ #expect -c "
75
+
76
+ for((i = 0; i < ${#array[@]}; i++)) {
77
+ expect -c "
78
+ spawn pdbedit -a ${array[i]}
79
+ expect "
80
+ let i++
81
+ expect -c "
82
+ expect \"new password:\"
83
+
84
+ send \"${array[i]}\n\"
85
+ expect \"retype new password:\"
86
+ send \"${array[i]}\n\"
87
+ expect "
88
+ }
89
+
90
+ #expect "
91
+
92
+ ```
93
+
94
+
95
+
96
+
54
97
  ### 補足情報(FW/ツールのバージョンなど)
55
98
 
56
99
  centos7でsambaのバージョンは4です。