質問編集履歴

5

修正

2024/10/28 01:16

投稿

outso1990
outso1990

スコア26

test CHANGED
File without changes
test CHANGED
@@ -37,6 +37,7 @@
37
37
  #!/usr/bin/env bash
38
38
 
39
39
  source ./env.sh
40
+ echo ${CURL_URL}
40
41
  curl ${CURL_URL} -X POST
41
42
  ```
42
43
 
@@ -56,13 +57,6 @@
56
57
  ```
57
58
 
58
59
  また、sourceコマンドで取り込まず、shを実行する前にコマンドラインでexportをした場合も問題ありません。
59
-
60
- test.sh
61
- ```bash
62
- #!/usr/bin/env bash
63
-
64
- curl https://www.test.com -X POST
65
- ```
66
60
 
67
61
  ```
68
62
  > export CURL_URL=https://test.com

4

修正

2024/10/28 01:15

投稿

outso1990
outso1990

スコア26

test CHANGED
File without changes
test CHANGED
@@ -5,7 +5,7 @@
5
5
  スクリプトを実行する前に環境変数を設定するためのファイルを置きます。
6
6
 
7
7
  env.sh
8
- ```
8
+ ```bash
9
9
  export CURL_URL=https://test.com
10
10
  ```
11
11
 
@@ -24,6 +24,13 @@
24
24
 
25
25
  curlコマンドの実行エラーとなってしまいます。
26
26
  環境変数の中身は問題ありません。
27
+
28
+ ```
29
+ > ./test.sh
30
+ curl: (3) URL using bad/illegal format or missing URL
31
+ ```
32
+
33
+ ### 環境変数がちゃんと設定されているか確認
27
34
 
28
35
  test.sh
29
36
  ```bash

3

全体的に修正

2024/10/28 01:12

投稿

outso1990
outso1990

スコア26

test CHANGED
File without changes
test CHANGED
@@ -2,28 +2,68 @@
2
2
  シェルスクリプトのファイル内にcurlコマンドを実行する行があります。
3
3
  URLは直書きせず、環境変数から取り込みます。
4
4
 
5
+ スクリプトを実行する前に環境変数を設定するためのファイルを置きます。
6
+
7
+ env.sh
8
+ ```
9
+ export CURL_URL=https://test.com
10
+ ```
11
+
12
+ スクリプト内で上記で置いたファイルをsourceコマンドで取り込みます。
13
+ そのあと、curlコマンドを実行します。
14
+
15
+ test.sh
5
16
  ```bash
6
17
  #!/usr/bin/env bash
18
+
19
+ source ./env.sh
7
20
  curl ${CURL_URL} -X POST
8
21
  ```
9
-
10
- スクリプトを実行する前にCURL_URLを環境変数として設定します。
11
22
 
12
23
  ### 発生している問題・分からないこと
13
24
 
14
25
  curlコマンドの実行エラーとなってしまいます。
15
26
  環境変数の中身は問題ありません。
16
27
 
28
+ test.sh
29
+ ```bash
30
+ #!/usr/bin/env bash
31
+
32
+ source ./env.sh
33
+ curl ${CURL_URL} -X POST
17
34
  ```
35
+
36
+ 結果
37
+ ```
18
- echo $CURL_URL
38
+ https://test.com
39
+ curl: (3) URL using bad/illegal format or missing URL
19
40
  ```
20
41
 
21
42
  環境変数を使わず直書きした場合は問題ありません。
22
43
 
44
+ test.sh
23
45
  ```bash
24
46
  #!/usr/bin/env bash
47
+
25
48
  curl https://www.test.com -X POST
26
49
  ```
50
+
51
+ また、sourceコマンドで取り込まず、shを実行する前にコマンドラインでexportをした場合も問題ありません。
52
+
53
+ test.sh
54
+ ```bash
55
+ #!/usr/bin/env bash
56
+
57
+ curl https://www.test.com -X POST
58
+ ```
59
+
60
+ ```
61
+ > export CURL_URL=https://test.com
62
+ > ./test.sh
63
+ ```
64
+
65
+ なぜか、スクリプト内のsourceコマンドで取り込んだ環境変数をcurlでコマンドで使用することができないのです。
66
+ とても特殊な状況なのか、調べても同様の事象がヒットしませんでした。
27
67
 
28
68
  ### エラーメッセージ
29
69
 
@@ -31,14 +71,7 @@
31
71
  curl: (3) URL using bad/illegal format or missing URL
32
72
  ```
33
73
 
34
- ### 該当のソースコード
74
+ ### 試したこと
35
-
36
- CURL_URL=https://www.test.com
37
-
38
- ```bash
39
- #!/usr/bin/env bash
40
- curl ${CURL_URL} -X POST
41
- ```
42
75
 
43
76
  環境変数の書き方の問題かと思い、以下も全て試しましたが同じエラーです。
44
77
 
@@ -50,14 +83,10 @@
50
83
  ```
51
84
  ```
52
85
 
53
- ### 試したこと・調べたこと
86
+ ### 調べたこと
54
87
  - [x] teratailやGoogle等で検索した
55
88
  - [x] ソースコードを自分なりに変更した
56
- - [ ] 知人に聞いた
57
- - [ ] その他
58
89
 
59
90
  ##### 上記の詳細・結果
60
91
  Web上で同様の事例がなく、解決に至らなかった。
61
92
 
62
- ### 補足
63
- 特になし

2

体裁修正

2024/10/25 11:05

投稿

outso1990
outso1990

スコア26

test CHANGED
File without changes
test CHANGED
@@ -33,7 +33,6 @@
33
33
 
34
34
  ### 該当のソースコード
35
35
 
36
- ```bash
37
36
  CURL_URL=https://www.test.com
38
37
 
39
38
  ```bash

1

テンプレート通りに入力したら投稿内容がめちゃくちゃになった

2024/10/25 11:04

投稿

outso1990
outso1990

スコア26

test CHANGED
File without changes
test CHANGED
@@ -10,24 +10,25 @@
10
10
  スクリプトを実行する前にCURL_URLを環境変数として設定します。
11
11
 
12
12
  ### 発生している問題・分からないこと
13
- curlコマンドの実行エラーとなってしまう。
14
13
 
14
+ curlコマンドの実行エラーとなってしまいます。
15
- 環境変数の中身は問題なし
15
+ 環境変数の中身は問題ありません
16
+
16
17
  ```
17
18
  echo $CURL_URL
18
19
  ```
19
20
 
20
- 環境変数を使わず直書きした場合は問題なし
21
+ 環境変数を使わず直書きした場合は問題ありません
22
+
21
23
  ```bash
22
24
  #!/usr/bin/env bash
23
25
  curl https://www.test.com -X POST
24
26
  ```
25
27
 
26
28
  ### エラーメッセージ
27
- ```error
29
+
28
30
  ```
29
31
  curl: (3) URL using bad/illegal format or missing URL
30
- ```
31
32
  ```
32
33
 
33
34
  ### 該当のソースコード