回答編集履歴

6

スクリプト修正

2016/11/05 03:02

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -3,3 +3,71 @@
3
3
  バイナリの場合はちょっと思いつかないですが...
4
4
 
5
5
 
6
+
7
+ ###2016/11/5 12:00編集
8
+
9
+ ```ここに言語を入力
10
+
11
+ **main.sh**
12
+
13
+ #!/bin/bash
14
+
15
+
16
+
17
+ REMOTEFILE=`ssh user@host test.sh`
18
+
19
+
20
+
21
+ ssh user@host "cat ${REMOTEFILE}" > 【適当な書き出し先】
22
+
23
+ ```
24
+
25
+ ```ここに言語を入力
26
+
27
+ **test.sh**
28
+
29
+ #/bin/bash
30
+
31
+
32
+
33
+ if [ -e ${FILENAME} ]; then
34
+
35
+ echo >&2 -n "同名のファイルが既に存在します。上書きしてもよろしいですか?[yes/no]"
36
+
37
+ read answer
38
+
39
+
40
+
41
+ if [ "$answer" != "yes" ]; then
42
+
43
+ echo >&2 "上書きを行いません"
44
+
45
+ exit
46
+
47
+ fi
48
+
49
+ else
50
+
51
+ echo >&2 "新規作成"
52
+
53
+ fi
54
+
55
+
56
+
57
+ echo >&2 "開始"
58
+
59
+
60
+
61
+ find ... | awk ... > ${FILENAME}
62
+
63
+
64
+
65
+ echo >&2 "終了"
66
+
67
+
68
+
69
+ echo ${FILENAME}
70
+
71
+ ```
72
+
73
+

5

一旦撤回

2016/11/05 03:02

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -3,75 +3,3 @@
3
3
  バイナリの場合はちょっと思いつかないですが...
4
4
 
5
5
 
6
-
7
- ###2016/11/5 11:45編集
8
-
9
- ```ここに言語を入力
10
-
11
- **main.sh**
12
-
13
- #!/bin/bash
14
-
15
-
16
-
17
- REMOTEFILE=`ssh user@host test.sh`
18
-
19
-
20
-
21
- ssh user@host "cat ${REMOTEFILE}" > 【適当な書き出し先】
22
-
23
- ```
24
-
25
- ```ここに言語を入力
26
-
27
- **test.sh**
28
-
29
- #!/bin/bash
30
-
31
-
32
-
33
- #/bin/bash
34
-
35
-
36
-
37
- if [ -e ${FILENAME} ]; then
38
-
39
- echo >&2 -n "同名のファイルが既に存在します。上書きしてもよろしいですか?[yes/no]"
40
-
41
- read answer
42
-
43
-
44
-
45
- if [ "$answer" != "yes" ]; then
46
-
47
- echo >&2 "上書きを行いません"
48
-
49
- exit
50
-
51
- fi
52
-
53
- else
54
-
55
- echo >&2 "新規作成"
56
-
57
- fi
58
-
59
-
60
-
61
- echo >&2 "開始"
62
-
63
-
64
-
65
- find ... | awk ... > ${FILENAME}
66
-
67
-
68
-
69
- echo >&2 "終了"
70
-
71
-
72
-
73
- echo ${FILENAME}
74
-
75
-
76
-
77
- ```

4

スクリプト編集

2016/11/05 02:49

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -4,41 +4,13 @@
4
4
 
5
5
 
6
6
 
7
- ###2016/11/4 22:50編集
7
+ ###2016/11/5 11:45編集
8
8
 
9
9
  ```ここに言語を入力
10
10
 
11
11
  **main.sh**
12
12
 
13
- #/bin/bash
13
+ #!/bin/bash
14
-
15
-
16
-
17
- if [ -e ${FILENAME} ]; then
18
-
19
- echo -n "同名のファイルが既に存在します。上書きしてもよろしいですか?[yes/no]"
20
-
21
- read answer
22
-
23
-
24
-
25
- if [ "$answer" != "yes" ]; then
26
-
27
- echo "上書きを行いません"
28
-
29
- exit
30
-
31
- fi
32
-
33
- else
34
-
35
- echo "新規作成"
36
-
37
- fi
38
-
39
-
40
-
41
- echo "開始"
42
14
 
43
15
 
44
16
 
@@ -46,11 +18,7 @@
46
18
 
47
19
 
48
20
 
49
- echo "終了"
50
-
51
-
52
-
53
- ssh user@host "cat ${REMOTEFILE}" > ${FILENAME}
21
+ ssh user@host "cat ${REMOTEFILE}" > 【適当な書き出し先】
54
22
 
55
23
  ```
56
24
 
@@ -62,12 +30,48 @@
62
30
 
63
31
 
64
32
 
65
- # ${OUTFILE}はこのスクリプトで構築している
33
+ #/bin/bash
66
-
67
- find ... | awk ... > ${OUTFILE} 2> /dev/null
68
34
 
69
35
 
70
36
 
37
+ if [ -e ${FILENAME} ]; then
38
+
39
+ echo >&2 -n "同名のファイルが既に存在します。上書きしてもよろしいですか?[yes/no]"
40
+
41
+ read answer
42
+
43
+
44
+
45
+ if [ "$answer" != "yes" ]; then
46
+
47
+ echo >&2 "上書きを行いません"
48
+
49
+ exit
50
+
51
+ fi
52
+
53
+ else
54
+
55
+ echo >&2 "新規作成"
56
+
57
+ fi
58
+
59
+
60
+
61
+ echo >&2 "開始"
62
+
63
+
64
+
65
+ find ... | awk ... > ${FILENAME}
66
+
67
+
68
+
69
+ echo >&2 "終了"
70
+
71
+
72
+
71
- echo ${OUTFILE}
73
+ echo ${FILENAME}
74
+
75
+
72
76
 
73
77
  ```

3

時刻修正

2016/11/05 02:45

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- ###2016/11/4 22:40編集
7
+ ###2016/11/4 22:50編集
8
8
 
9
9
  ```ここに言語を入力
10
10
 

2

シェルスクリプト修正

2016/11/04 13:54

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -4,9 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- ###2016/11/4 20:45追記
7
+ ###2016/11/4 22:40編集
8
-
9
- これまで聞いた話を元に想定スクリプトを書いてみます。
10
8
 
11
9
  ```ここに言語を入力
12
10
 
@@ -44,7 +42,7 @@
44
42
 
45
43
 
46
44
 
47
- ssh user@host "test.sh ${REMOTEFILE}"
45
+ REMOTEFILE=`ssh user@host test.sh`
48
46
 
49
47
 
50
48
 
@@ -64,10 +62,12 @@
64
62
 
65
63
 
66
64
 
65
+ # ${OUTFILE}はこのスクリプトで構築している
66
+
67
- find ... | awk ... > $1
67
+ find ... | awk ... > ${OUTFILE} 2> /dev/null
68
+
69
+
70
+
71
+ echo ${OUTFILE}
68
72
 
69
73
  ```
70
-
71
- test.sh側でリダイレクトする前提です。
72
-
73
- リモートのファイル名をtest.shの引数として与えて、test.shでは引数"$1"としてリモートファイル名を取得しています。

1

スクリプト追記

2016/11/04 13:50

投稿

ynakano
ynakano

スコア1894

test CHANGED
@@ -1,3 +1,73 @@
1
1
  ローカルに持ってきたいファイルがテキスト形式なら、sshでcatしてローカルにリダイレクトしてはどうでしょうか?
2
2
 
3
3
  バイナリの場合はちょっと思いつかないですが...
4
+
5
+
6
+
7
+ ###2016/11/4 20:45追記
8
+
9
+ これまで聞いた話を元に想定スクリプトを書いてみます。
10
+
11
+ ```ここに言語を入力
12
+
13
+ **main.sh**
14
+
15
+ #/bin/bash
16
+
17
+
18
+
19
+ if [ -e ${FILENAME} ]; then
20
+
21
+ echo -n "同名のファイルが既に存在します。上書きしてもよろしいですか?[yes/no]"
22
+
23
+ read answer
24
+
25
+
26
+
27
+ if [ "$answer" != "yes" ]; then
28
+
29
+ echo "上書きを行いません"
30
+
31
+ exit
32
+
33
+ fi
34
+
35
+ else
36
+
37
+ echo "新規作成"
38
+
39
+ fi
40
+
41
+
42
+
43
+ echo "開始"
44
+
45
+
46
+
47
+ ssh user@host "test.sh ${REMOTEFILE}"
48
+
49
+
50
+
51
+ echo "終了"
52
+
53
+
54
+
55
+ ssh user@host "cat ${REMOTEFILE}" > ${FILENAME}
56
+
57
+ ```
58
+
59
+ ```ここに言語を入力
60
+
61
+ **test.sh**
62
+
63
+ #!/bin/bash
64
+
65
+
66
+
67
+ find ... | awk ... > $1
68
+
69
+ ```
70
+
71
+ test.sh側でリダイレクトする前提です。
72
+
73
+ リモートのファイル名をtest.shの引数として与えて、test.shでは引数"$1"としてリモートファイル名を取得しています。