스크립트를 통해 Unix에서 Windows 서버에 연결

스크립트를 통해 Unix에서 Windows 서버에 연결

Windows 서버(예: 10.1.1.10)에 연결하려고 합니다. 서버에는 여러 .zip 파일이 포함된 RAJ라는 폴더가 있습니다. 이러한 모든 zip 파일에는 XYZ.txt라는 텍스트 파일이 포함되어 있습니다. 이제 각 .zip 파일의 XYX.txt 파일 내용을 병합하고 병합된 파일을 사용하여 새 텍스트 문서를 만들어야 합니다.

그렇다면 Unix를 통해 Windows 서버에 어떻게 연결하고 각 파일의 XYZ.txt에서만 데이터를 추출합니까?

답변1

이것은 여러 도구와 관련된 매우 광범위한 질문입니다. 먼저 Windows 공유를 연결하려면 mount.cifs명령이 필요합니다. 패키지에서 사용 가능합니다 cifs-utils(패키지 이름은 배포판에 따라 다를 수 있습니다).

간단한 사용 예:

mount.cifs //10.1.1.10/RAJ /mnt/windows -o rw,username=Swapnil

man mount.cifs필요에 따라 사용 가능한 모든 옵션을 확인하세요.

그런 다음 간단한 스크립트를 작성하여 모든 zip파일을 나열하고 추출하고 연결할 수 있습니다. 간단한 예:

# For each zip file in this share, do
for f in `find /mnt/windows -name "*.zip"` ; do
  # Make a temporary directory
  TMPDIR=`mktemp -d`
  # unzip in temporary directory
  unzip -d ${TMPDIR} ${f}
  # cat all the txt files into one
  cat ${TMPDIR}/*.txt >> /pth/to/result.txt
  # remove temp directory
  rm -Rf ${TMPDIR}
done

관련 정보