Linux 명령 의 dos2unix

4489 단어 dos2unix
원본 링크:http://m.blog.sina.com.cn/s/blog_7226f3660100uipz.html#page=4
cat - A 는 파일 줄 바 꿈 문자 인 코딩 을 표시 할 수 있 습 니 다. windows 줄 바 꿈 문자 ^ M, Liux 줄 바 꿈 자 는 $입 니 다.
Liux 에서 windows 줄 바 꿈 자 를 삭제 합 니 다 ^ M (즉 \ r) 문 자 를 삭제 해 야 합 니 다.
cat a.txt | tr -d "^M" > b.txt
dos2unix
for i in `ls */10*/user.properties`;do echo "-- $i --";cat $i;done
for i in   */*/webip.properties;do echo $i;cat $i;echo;done
find -name '.DS_Store'|xargs rm -f
find -name '.svn' -type d |xargs rm -rf
find -name '._.DS_Store' -type f |xargs rm -rf
Linux 명령 의 dos2unix - DOS 형식 텍스트 파일 을 UNIX 형식 으로 변환 합 니 다.
용도 설명
dos2unix 명령 은 DOS 형식의 텍스트 파일 을 UNIX 형식 으로 변환 하 는 데 사 용 됩 니 다 (DOS / MAC to UNIX text file format converter).DOS 의 텍스트 파일 은 \ \ r 를 줄 끊 기 표지 로 하고 16 진수 로 표시 하면 0D 0A 입 니 다.유 닉 스 의 텍스트 파일 은 인 터 럽 트 표지 로 16 진법 이 0A 라 고 표시 합 니 다.DOS 형식의 텍스트 파일 은 Linux 아래 에 있 습 니 다. 낮은 버 전의 vi 로 열 면 줄 끝 에 ^ M 이 표시 되 고 많은 명령 들 이 이러한 형식의 파일 을 잘 처리 하지 못 합 니 다. 셸 스 크 립 트 라면...유 닉 스 형식의 텍스트 파일 은 Windows 에서 Notepad 로 열 때 함께 표 시 됩 니 다.따라서 유 닉 스 형식의 텍스트 파일 을 도스 형식 으로 변환 하 는 유 닉 스 2dos 명령 에 대응 하 는 두 가지 형식 파일 이 서로 변환 되 어야 합 니 다.
상용 매개 변수
DOS 형식의 텍스트 파일 을 유 닉 스 형식 으로 변환 하 는 가장 쉬 운 방법 은 dos2unix 가 파일 이름 을 직접 따라 가 는 것 입 니 다.
형식: dos2unix file
한 번 에 여러 파일 을 변환 하면 이 파일 들 의 이름 을 dos2unix 다음 에 직접 따라 갑 니 다.(주: - o 인 자 를 추가 할 수도 있 고 추가 하지 않 아 도 됩 니 다. 효과 가 같 습 니 다)
형식: dos2unix file 1 file 2 file 3
형식: dos2unix - o file 1 file 2 file 3
위 에서 변환 할 때 원래 파일 에서 직접 수정 합 니 다. 변환 결 과 를 다른 파일 에 저장 하려 면 원본 파일 이 변 하지 않 으 면 - n 인 자 를 사용 할 수 있 습 니 다.
형식: dos2unix oldfile newfile
파일 시간 스탬프 가 변 하지 않 으 려 면 - k 인 자 를 추가 하 십시오.그래서 위의 몇 가지 명령 은 모두 - k 인 자 를 추가 하여 파일 시간 스탬프 를 유지 할 수 있 습 니 다.
형식: dos2unix - k file
형식: dos2unix - k file 1 file 2 file 3
형식: dos2unix - k - o file 1 file 2 file 3
형식: dos2unix - k - n oldfile newfile
주: 유 닉 스 2dos 명령 의 사용 방식 은 dos2unix 명령 과 유사 합 니 다.
사용 예시
리 눅 스에 서 DOS 형식 텍스트 파일 의 표현 을 예시 합 니 다.
현재 스 크 립 트 파일 이 있 습 니 다. job. sh 는 Linux 에서 vi 로 편집 되 었 습 니 다.
[root@jfht ~]# cat job.sh
#!/bin/sh
date >job.txt
       DOS      。
[root@jfht ~]# unix2dos job.sh
unix2dos: converting file job.sh to DOS format ...
       。
[root@jfht ~]# ./job.sh
-bash: ./job.sh:     
[root@jfht ~]# chmod +x job.sh
[root@jfht ~]# ./job.sh
-bash: ./job.sh: /bin/sh^M: bad interpreter:          
DOS               ,                   ,Linux        /bin/sh^M,   /bin/sh。
     Linux          DOS        。
[root@jfht ~]# cat -v job.sh   <== cat -v             ,   -v   cat    。
#!/bin/sh^M
^M
date >job.txt^M
^M
[root@jfht ~]# hexdump -C job.sh   <== hexdump -C                 。
00000000  23 21 2f 62 69 6e 2f 73  68 0d 0a 0d 0a 64 61 74  |#!/bin/sh....dat|
00000010  65 20 3e 6a 6f 62 2e 74  78 74 0d 0a 0d 0a   |e >job.txt....|
0000001e
[root@jfht ~]# vi job.sh   <==   vi          [dos]     。    vi       ^M。

#!/bin/sh

date >job.txt

~   
~ 
'job.sh' [dos ] 4L, 30C
     DOS    Unix   ,    。
root@jfht ~]# dos2unix job.sh
dos2unix: converting file job.sh to UNIX format ...
[root@jfht ~]# ./job.sh
     ,   “-bash: ./job.sh: /bin/sh^M: bad interpreter:          ”    。
[root@jfht ~]#
    dos2unix -k dos2unix -n     
[root@jfht ~]# cat <<EOF >1.txt
> 1
> 2

> 3
> EOF
[root@jfht ~]# file 1.txt
1.txt: ASCII text
[root@jfht ~]# ls -l 1.txt
-rw-r--r-- 1 root root 6 11-14 09:08 1.txt
[root@jfht ~]# date
2010  11  14      09:28:42 CST
[root@jfht ~]# unix2dos -k 1.txt   <==        
unix2dos: converting file 1.txt to DOS format ...
[root@jfht ~]# ls -l 1.txt
-rw-r--r-- 1 root root 9 11-14 09:08 1.txt
[root@jfht ~]# dos2unix -n 1.txt 2.txt   <==  1.txt   2.txt
dos2unix: converting file 1.txt to file 2.txt in UNIX format ...
[root@jfht ~]# ls -l 1.txt 2.txt
-rw-r--r-- 1 root root 9 11-14 09:08 1.txt
-rw-r--r-- 1 root root 6 11-14 09:30 2.txt
[root@jfht ~]# file 1.txt 2.txt
1.txt: ASCII text, with CRLF line terminators
2.txt: ASCII text
[root@jfht ~]# cat -v 1.txt
1^M
2^M
3^M
[root@jfht ~]# cat -v 2.txt
1
2
3
[root@jfht ~]#

좋은 웹페이지 즐겨찾기