Linuxの先生教えてください!!

1 : 2020/05/15(金) 14:26:22.091 ID:++CYtJUS0
$ cat < testfile これと $ cat testfile これの違いが理解できません!!
使い道がわかりません!教えてください!
2 : 2020/05/15(金) 14:26:58.068 ID:49l8kZko0
そうです!
3 : 2020/05/15(金) 14:27:38.515 ID:++CYtJUS0
>>2
わかりません!
4 : 2020/05/15(金) 14:29:53.090 ID:W6kJNfGoM
使い道がわかんないなら気にしなくていいぞ
俺なんていまだにcatとviewの違いってなんだったか忘れてるし
5 : 2020/05/15(金) 14:30:03.231 ID:KhsqgKx3d
考えるんじゃない感じるんだ
6 : 2020/05/15(金) 14:30:37.454 ID:wjplxEYB0
cat < file1 > file2
8 : 2020/05/15(金) 14:32:55.302 ID:++CYtJUS0
>>6
そうそうこれこれ!!
これわからん!!
cat file1 > file2
でいいじゃん!
10 : 2020/05/15(金) 14:36:10.780 ID:++CYtJUS0
あああああわからないよおおおおお
11 : 2020/05/15(金) 14:37:06.679 ID:wjplxEYB0
cat < file1 file2 > file3
12 : 2020/05/15(金) 14:40:15.217 ID:++CYtJUS0
>>11
あ、あ、あ、なんかわかりそう
13 : 2020/05/15(金) 14:41:18.484 ID:++CYtJUS0
file2の内容がfile3に書かれるね?
だから~ん~
14 : 2020/05/15(金) 14:42:57.769 ID:++CYtJUS0
cat file1 file2 > file3 こうすると file1 file2が file3に書き込まれるね?
ということは
15 : 2020/05/15(金) 14:44:00.009 ID:GncdmCRJ0
引数をファイル名として開くかリダイレクトで標準入力をファイルに切り替えるかの違いでしょ?
16 : 2020/05/15(金) 14:45:08.198 ID:8bzPlcm/0
catはそもそも
ファイルを結合して出力する(concatenate)
っていう意味だからね
18 : 2020/05/15(金) 14:47:35.702 ID:++CYtJUS0
cat < file1 file2 > file3 これの動きを誰か解説してはくれないだろうか。。。
19 : 2020/05/15(金) 14:48:49.109 ID:8bzPlcm/0
>>18
1と2をcatに入れて結合して3に書き出すんだよ
21 : 2020/05/15(金) 14:51:44.033 ID:++CYtJUS0
>>19
3に入るのは2の内容だけだよね?
20 : 2020/05/15(金) 14:50:26.905 ID:wjplxEYB0
catコマンドの原語はconcatinateだしね
22 : 2020/05/15(金) 14:54:41.796 ID:wjplxEYB0
実際にやってみて
file1 と file2が連結されてfile3に入るはずだから
24 : 2020/05/15(金) 14:57:01.738 ID:QweN0iKF0
>>22
そんな実装があるとは思えん
少なくともGNU coreutilsのcatは引数が指定されると標準入力を無視する
23 : 2020/05/15(金) 14:56:45.573 ID:++CYtJUS0
cat file1 file2
file1***
file2***

# cat < file1 file2 > file3
# cat file3
file2***

25 : 2020/05/15(金) 14:57:35.509 ID:wjplxEYB0
>>23
そうなった?
おかしいな
26 : 2020/05/15(金) 14:57:36.215 ID:++CYtJUS0
file2の内容だけしか入ってない
27 : 2020/05/15(金) 14:58:14.188 ID:wjplxEYB0
そうか
じゃおれの勘違いだ
ごめん
31 : 2020/05/15(金) 15:02:33.088 ID:++CYtJUS0
実はこれ、先輩が作ったサーバ内にあるスクリプトでこんな書き方してる処理があって
意味が分からなくて困ってる。。。
実際には、[関数] [conffile_1] < [conffil_1] > Logfile って書かれてる。
なんで2回同じconf呼んでるのかよくわからないもうわからない
32 : 2020/05/15(金) 15:03:22.205 ID:8bzPlcm/0
ちなみに
cat < file1 file2 file3 > file4
とすると、2と3をくっつけた結果が得られる
33 : 2020/05/15(金) 15:03:30.487 ID:++CYtJUS0
ちなみに先輩はもうすでに卒業している。(というかいつの先輩かわからない)

コメント

タイトルとURLをコピーしました