생활
cat 명령어는 어떻게 사용하나요?
분할되어 있는 데이터셋을 받았는데 cat 명령어를 사용해서 병합을 해야 할 것 같습니다. 하지만 사용 방법을 모르겠습니다.
UNIX에서 사용되는 명령어라고 알고 있는데 이를 윈도우에서 데이터셋 병합이 가능한가요?
3개의 답변이 있어요!
네, 가능합니다.
cat은 concatenate and print files 의 줄임말로 파일을 순차적으로 읽어서 표준 출력(화면)에 출력을 하는 역할 을 합니다.
명령어를 보면 아래와 같이 되어 있습니다.
cat [-benstuv] [file ...]
파일이 ... 즉 여러개를 입력을 받을 수 있습니다.
아래는 예제로 설명하겠습니다. (터미널은 사용할 수 있다고 가정합니다.)
현재 디렉토리에 1.txt, 2.txt, 3.txt 파일 이 있습니다.ls 명령으로 확인해보면 아래와 같습니다. (다른 파일도 있어서 확장자가 txt 인 것 만으로 표시했습니다.)
ls *.txt
각각의 내용을 확인해보면 아래와 같습니다.
cat 1.txt cat 2.txt cat 3.txt
위에는 각각을 나눠서 출력을 했습니다.
cat 1.txt 2.txt 3.txt
만약 1.txt + 2.txt + 3.txt 식으로 한번에 출력을 하려면 아래와 같이 하면 됩니다.
이제 해당 내용을 화면이 아닌 파일로 출력을 해보겠습니다.
cat 1.txt 2.txt 3.txt > merge.txt
UNIX에서는 리다이렉션이라고 이야기합니다.수행의 결과는 별도로 나타나지 않습니다.
새로 생긴 merge.txt 를 cat으로 출력해보면 아래와 같습니다.
위의 예를 응용해서 처리하시면 될 것 같습니다.
추가적으로 cat 명령을 쓰실 때 와일드카드(? 나 *)도 가능합니다.
안녕하세요~^^
분할된 데이터셋 파일을 병합하고 싶으시군요.
윈도우(cmd)에서는 cat 명령어와 같은 기능과 같은 type명령어로 실행하시면 됩니다.
예를들어,
분할된 파일이 1.txt 2.txt 3.txt 이라면,
병합해서 4.txt로 하나의 파일로 만들 수 있습니다.
윈도우 cmd창에서 분할된 파일이 존재하는 디렉터리로 가셔서 아래와 같이 해주시면 됩니다.
type 1.txt 2.txt 3.txt > 4.txt
분할된 파일이 많다면,
type *.txt > 4.txt
도움이 됐으면 좋겠네요^^
윈도우에서는 type이란 명령어가 동일한 기능을 수행합니다.
또한 grep 명령어 대신 find 명령어를 입력하여 원하는 문자열을 찾을 수 있습니다
C:\> type mylog.txt | find "FINDTEXT"
리다이렉션을 사용하여 파일로 저장하는 것도 가능합니다
C:\> type mylog.txt | find "FINDTEXT" >> result.txt
제가 보기에는 윈도우에서는 filejoin 같은 프로그램을 이용해서 파일을 합치는게 쉽습니다.