質問編集履歴

4

shebangを追記

2021/06/17 07:09

投稿

m_takahumi
m_takahumi

スコア3

test CHANGED
File without changes
test CHANGED
@@ -58,6 +58,8 @@
58
58
 
59
59
  ```ここに言語名を入力
60
60
 
61
+ #!/bin/sh
62
+
61
63
  (略)
62
64
 
63
65
  CMD=`awk -F, '{
@@ -108,6 +110,8 @@
108
110
 
109
111
  ```ここに言語名を入力
110
112
 
113
+ #!/bin/sh
114
+
111
115
  (略)
112
116
 
113
117
  CMD=`awk -F, '{
@@ -190,7 +194,7 @@
190
194
 
191
195
  Oracle Corporation SunOS 5.11 11.2
192
196
 
193
- /bin/csh
197
+ ~~/bin/csh~~
194
198
 
195
199
 
196
200
 
@@ -202,4 +206,4 @@
202
206
 
203
207
  GNU Awk 4.2.1, API: 2.0 (GNU MPFR 3.1.6-p2, GNU MP 6.1.2)
204
208
 
205
- /bin/bash
209
+ ~~/bin/bash~~

3

使用シェルを追記

2021/06/17 07:09

投稿

m_takahumi
m_takahumi

スコア3

test CHANGED
File without changes
test CHANGED
@@ -190,6 +190,8 @@
190
190
 
191
191
  Oracle Corporation SunOS 5.11 11.2
192
192
 
193
+ /bin/csh
194
+
193
195
 
194
196
 
195
197
 
@@ -199,3 +201,5 @@
199
201
  Red Hat Enterprise Linux release 8.2 (Ootpa)
200
202
 
201
203
  GNU Awk 4.2.1, API: 2.0 (GNU MPFR 3.1.6-p2, GNU MP 6.1.2)
204
+
205
+ /bin/bash

2

【追記】の追加、ソース中の余計な文字(斜字・太字にしようとしてついてしまった__や**)を削除

2021/06/17 06:37

投稿

m_takahumi
m_takahumi

スコア3

test CHANGED
File without changes
test CHANGED
@@ -62,7 +62,7 @@
62
62
 
63
63
  CMD=`awk -F, '{
64
64
 
65
- __if ( ! $2 ~ /[^ \t ]/ )__
65
+ if ( ! $2 ~ /[^ \t ]/ )
66
66
 
67
67
  {
68
68
 
@@ -112,7 +112,7 @@
112
112
 
113
113
  CMD=`awk -F, '{
114
114
 
115
- __if ( ! **(**$2 ~ /[^ \t ]/**)** )__
115
+ if ( ! ($2 ~ /[^ \t ]/) )
116
116
 
117
117
  {
118
118
 
@@ -144,6 +144,42 @@
144
144
 
145
145
  ```
146
146
 
147
+ ### 追記(2021/06/17 15:12)
148
+
149
+ SolarisサーバとLinuxサーバでawkの処理結果に差異があるのか確認するため、上記hoge.shの問題の条件式の上に以下コマンドを追記して再度実行したところ、両環境で同一の文字列が出力されているため、awkによる文字列抽出の問題ではなく、if文中の"!"の扱いが異なっている?
150
+
151
+
152
+
153
+ ```ここに言語名を入力
154
+
155
+ cat "input.txt" | awk -F, '{print $1}' >> awktest.log
156
+
157
+ cat "input.txt" | awk -F, '{print $2}' >> awktest.log
158
+
159
+ cat "input.txt" | awk -F, '{print $3}' >> awktest.log
160
+
161
+ cat "input.txt" | awk -F, '/[^ \t ]/ {print $2 }' >> awktest.log
162
+
163
+ cat "input.txt" | awk -F, '/[^ \t ]/ {print $3 }' >> awktest.log
164
+
165
+ ```
166
+
167
+ ■実行結果
168
+
169
+ ```ここに言語名を入力
170
+
171
+ 10
172
+
173
+ JHHTTTTTT11
174
+
175
+ ITRTTT11
176
+
177
+ JHHTTTTTT11
178
+
179
+ ITRTTT11
180
+
181
+ ```
182
+
147
183
 
148
184
 
149
185
  ### 補足情報(FW/ツールのバージョンなど)

1

移行先環境のAwkバージョンを追記

2021/06/17 06:21

投稿

m_takahumi
m_takahumi

スコア3

test CHANGED
File without changes
test CHANGED
@@ -156,6 +156,10 @@
156
156
 
157
157
 
158
158
 
159
+
160
+
159
161
  ■移行先 OS:Linux
160
162
 
161
163
  Red Hat Enterprise Linux release 8.2 (Ootpa)
164
+
165
+ GNU Awk 4.2.1, API: 2.0 (GNU MPFR 3.1.6-p2, GNU MP 6.1.2)