diff === æ¯è¾ç»å®ç两个æä»¶çä¸å ## è¡¥å 说æ **diffå½ä»¤** 卿ç®åçæ åµä¸ï¼æ¯è¾ç»å®ç两个æä»¶çä¸åãå¦æä½¿ç¨â-â代æ¿âæä»¶âåæ°ï¼åè¦æ¯è¾çå 容尿¥èªæ åè¾å ¥ãdiffå½ä»¤æ¯ä»¥éè¡çæ¹å¼ï¼æ¯è¾ææ¬æä»¶çå¼åå¤ãå¦æè¯¥å½ä»¤æå®è¿è¡ç®å½çæ¯è¾ï¼åå°ä¼æ¯è¾è¯¥ç®å½ä¸å ·æç¸åæä»¶åçæä»¶ï¼èä¸ä¼å¯¹å ¶åç®å½æä»¶è¿è¡ä»»ä½æ¯è¾æä½ã ### è¯æ³ ``` diff(é项)(åæ°) ``` ### é项 ``` -<è¡æ°>ï¼æå®è¦æ¾ç¤ºå¤å°è¡çææ¬ãæ¤åæ°å¿ é¡»ä¸-cæ-uåæ°ä¸å¹¶ä½¿ç¨ï¼ -aæââtextï¼diffé¢è®¾åªä¼éè¡æ¯è¾ææ¬æä»¶ï¼ -bæ--ignore-space-changeï¼ä¸æ£æ¥ç©ºæ ¼å符çä¸åï¼ -Bæ--ignore-blank-linesï¼ä¸æ£æ¥ç©ºç½è¡ï¼ -cï¼æ¾ç¤ºå ¨é¨å 容ï¼å¹¶æ åºä¸åä¹å¤ï¼ -C<è¡æ°>æ--context<è¡æ°>ï¼ä¸æ§è¡â-c-<è¡æ°>âæä»¤ç¸åï¼ -dæââminimalï¼ä½¿ç¨ä¸åçæ¼ç®æ³ï¼ä»¥å°çå使¥åæ¯è¾ï¼ -D<å·¨éåç§°>æifdef<å·¨éåç§°>ï¼æ¤åæ°çè¾åºæ ¼å¼å¯ç¨äºåç½®å¤çå¨å·¨éï¼ -eæââedï¼æ¤åæ°çè¾åºæ ¼å¼å¯ç¨äºedçscriptæä»¶ï¼ -fæ-forward-edï¼è¾åºçæ ¼å¼ç±»ä¼¼edçscriptæä»¶ï¼ä½æç §åæ¥æä»¶çé¡ºåºæ¥æ¾ç¤ºä¸åå¤ï¼ -Hæ--speed-large-filesï¼æ¯è¾å¤§æä»¶æ¶ï¼å¯å å¿«éåº¦ï¼ -l<å符æå符串>æ--ignore-matching-lines<å符æå符串>ï¼è¥ä¸¤ä¸ªæä»¶å¨æå è¡ææä¸åï¼èä¹é èªåæ¶é½å å«äºé项䏿å®çå符æå符串ï¼å䏿¾ç¤ºè¿ä¸¤ä¸ªæä»¶çå·®å¼ï¼ -iæ--ignore-caseï¼ä¸æ£æ¥å¤§å°åçä¸åï¼ -læââpaginateï¼å°ç»æäº¤ç±prç¨åºæ¥åé¡µï¼ -næâârcsï¼å°æ¯è¾ç»æä»¥RCSçæ ¼å¼æ¥æ¾ç¤ºï¼ -Næ--new-fileï¼å¨æ¯è¾ç®å½æ¶ï¼è¥æä»¶Aä» åºç°å¨æä¸ªç®å½ä¸ï¼é¢è®¾ä¼æ¾ç¤ºï¼Only inç®å½ï¼æä»¶A è¥ä½¿ç¨-Nåæ°ï¼ådiffä¼å°æä»¶A ä¸ä¸ä¸ªç©ºç½çæä»¶æ¯è¾ï¼ -pï¼è¥æ¯è¾çæä»¶ä¸ºCè¯è¨çç¨åºç æä»¶æ¶ï¼æ¾ç¤ºå·®å¼æå¨ç彿°åç§°ï¼ -Pæ--unidirectional-new-fileï¼ä¸-N类似ï¼ä½åªæå½ç¬¬äºä¸ªç®å½å å«äºç¬¬ä¸ä¸ªç®å½ææ²¡æçæä»¶æ¶ï¼æä¼å°è¿ä¸ªæä»¶ä¸ç©ºç½çæä»¶åæ¯è¾ï¼ -qæ--briefï¼ä» æ¾ç¤ºææ å·®å¼ï¼ä¸æ¾ç¤ºè¯¦ç»çä¿¡æ¯ï¼ -ræâârecursiveï¼æ¯è¾åç®å½ä¸çæä»¶ï¼ -sæ--report-identical-filesï¼è¥æ²¡æåç°ä»»ä½å·®å¼ï¼ä»ç¶æ¾ç¤ºä¿¡æ¯ï¼ -S<æä»¶>æ--starting-file<æä»¶>ï¼å¨æ¯è¾ç®å½æ¶ï¼ä»æå®çæä»¶å¼å§æ¯è¾ï¼ -tæ--expand-tabsï¼å¨è¾åºæ¶ï¼å°tabå符å±å¼ï¼ -Tæ--initial-tabï¼å¨æ¯è¡åé¢å ä¸tabå符以便对é½ï¼ -uï¼-U<åæ°>æ--unified=<åæ°>ï¼ä»¥åå¹¶çæ¹å¼æ¥æ¾ç¤ºæä»¶å 容çä¸åï¼ -væââversionï¼æ¾ç¤ºçæ¬ä¿¡æ¯ï¼ -wæ--ignore-all-spaceï¼å¿½ç¥å ¨é¨çç©ºæ ¼åç¬¦ï¼ -W<宽度>æ--width<宽度>ï¼å¨ä½¿ç¨-yåæ°æ¶ï¼æå®æ å®½ï¼ -x<æä»¶åæç®å½>æ--exclude<æä»¶åæç®å½>ï¼ä¸æ¯è¾é项䏿æå®çæä»¶æç®å½ï¼ -X<æä»¶>æ--exclude-from<æä»¶>ï¼æ¨å¯ä»¥å°æä»¶æç®å½ç±»ååæææ¬æä»¶ï¼ç¶åå¨=<æä»¶>䏿宿¤ææ¬æä»¶ï¼ -yæ--side-by-sideï¼ä»¥å¹¶åçæ¹å¼æ¾ç¤ºæä»¶çå¼åä¹å¤ï¼ --helpï¼æ¾ç¤ºå¸®å©ï¼ --left-columnï¼å¨ä½¿ç¨-yåæ°æ¶ï¼è¥ä¸¤ä¸ªæä»¶æä¸è¡å 容ç¸åï¼åä» å¨å·¦ä¾§çæ 使¾ç¤ºè¯¥è¡å å®¹ï¼ --suppress-common-linesï¼å¨ä½¿ç¨-yåæ°æ¶ï¼ä» æ¾ç¤ºä¸åä¹å¤ã ``` ### åæ° * æä»¶1ï¼æå®è¦æ¯è¾ç第ä¸ä¸ªæä»¶ï¼ * æä»¶2ï¼æå®è¦æ¯è¾ç第äºä¸ªæä»¶ã ### å®ä¾ å°ç®å½`/usr/li`ä¸çæä»¶"test.txt"ä¸å½åç®å½ä¸çæä»¶"test.txt"è¿è¡æ¯è¾ï¼è¾å ¥å¦ä¸å½ä»¤ï¼ ``` diff /usr/li test.txt #使ç¨diffæä»¤å¯¹æä»¶è¿è¡æ¯è¾ ``` ä¸é¢çå½ä»¤æ§è¡åï¼ä¼å°æ¯è¾åçä¸åä¹å¤ä»¥æå®çå½¢å¼ååºï¼å¦ä¸æç¤ºï¼ ``` n1 a n3,n4 n1,n2 d n3 n1,n2 c n3,n4 ``` å ¶ä¸ï¼åæ¯"a"ã"d"ã"c"åå«è¡¨ç¤ºæ·»å ãå é¤åä¿®æ¹æä½ãè"n1"ã"n2"è¡¨ç¤ºå¨æä»¶1ä¸çè¡å·ï¼"n3"ã"n4"è¡¨ç¤ºå¨æä»¶2ä¸çè¡å·ã 注æï¼ä»¥ä¸è¯´ææå®äºä¸¤ä¸ªæä»¶ä¸ä¸åå¤çè¡å·åå ¶ç¸åºçæä½ãå¨è¾åºå½¢å¼ä¸ï¼æ¯ä¸è¡åé¢å°è·éåå°å½±åçè¥å¹²è¡ãå ¶ä¸ï¼ä»¥<å¼å§çè¡å±äºæä»¶1ï¼ä»¥>å¼å§çè¡å±äºæä»¶2ã