Provided by:
manpages-ja_0.5.0.0.20060115-1_all 
IF-THEN-ELSE
Cã‚å®ãƒç’ã‚æ˜å½æŽå¼
diff を用ã„㦠2 ファイル㮠C ソースコードをマージã™ã‚‹ã“ã¨ã‚‚ã§ã„襦
ã“ã®å‡ºåЛ形å¼ã«ã¯ã€ä¸¡æ–¹ã®ãƒ•ァイルã®è¡ŒãŒã™ã¹ã¦å«ã¾ã‚Œã‚‹ã€‚
両方ã®ãƒ•ァイルã«å…±é€šãªè¡Œã¯ä¸€åº¦ã—ã‹ç™»å ´ã—ãªã„。 ç•°ãªã‚‹éƒ¨åˆ†ã¯ C
プリプãƒã‚»ãƒƒã‚µã®æŒ‡å®šã‚’用ã„ã¦åˆ†é›¢ã•れる。 #ifdef NAME ã¾ãŸã¯ #ifndef
NAME, ,BR #else ", and " #endif ã§ã‚る。 出力をコンパイルã™ã‚‹ã¨-
ã€ãƒžã‚¯ãƒ NAME を定義ã—ãŸã‚Šã€æœªå®šç¾©ã®ã¾ã¾ã«ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€
ã©ã¡ã‚‰ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使ã†ã‹ã‚’é¸æŠžã§ã„襦
例ãˆã°ã€`wait (&s)' ã¨ã„ã†ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’ `waitpid (-1, &s, 0)'
ã«å¤‰æ›´ã—ã€æ–°æ—§ã®ãƒ•ァイルを `--ifdef=HAVE_WAITPID'
オプションã«ã‚ˆã£ã¦ãƒžãƒ¼ã‚¸ã™ã‚‹ã¨ã€
影響をå—ã‘ãŸéƒ¨åˆ†ã®ã‚³ãƒ¼ãƒ‰ã¯ä»¥ä¸‹ã®ã‚ˆã†ã«ãªã‚‹ã ã‚ã†:
do {
#ifndef HAVE_WAITPID
if ((w = wait (&s)) < 0 && errno != EINTR)
#else /* HAVE_WAITPID */
if ((w = waitpid (-1, &s, 0)) < 0 && errno != EINTR)
#endif /* HAVE_WAITPID */
return w;
} while (w != child);
è¡åœã‚å“ãƒè¥ãƒç’ãƒå¼å½æŽå¼
行グループ形å¼ã‚’用ã„ã‚‹ã¨ã€ if-then-else
入力をå—ã‘入れる多ãã®ã‚¢ãƒ—リケーションã«é©ã—ãŸå½¢å¼ã‚’指定ã§ã„襦
例ãˆã°ãƒ—ãƒã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã‚„文書整形言語ãªã©ãŒæŒ™ã’られる。
行グループ形å¼ã¯ã€
ä¼¼ã¦ã„る行ã‹ã‚‰ãªã‚‹éš£æŽ¥ã—ãŸã‚°ãƒ«ãƒ¼ãƒ—ã®å‡ºåЛ形å¼ã‚’指定ã™ã‚‹ã€‚
例ãˆã°ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ TeX ファイル `old' 㨠`new' を比較ã—〠old
ã®éƒ¨åˆ†ã‚’ `\begin{em}'-`\end{em}' ã§å›²ã¿ã€ new ã®éƒ¨åˆ†ã‚’
`\begin{bf}'-`\end{bf}' ã§å›²ã‚“ã§ãƒžãƒ¼ã‚¸ã—ãŸã‹ãŸã¡ã§å‡ºåŠ›ã™ã‚‹ã€‚
diff \
--old-group-format='\begin{em}
%<\end{em}
' \
--new-group-format='\begin{bf}
%>\end{bf}
' \
old new
以下ã®ã‚³ãƒžãƒ³ãƒ‰ã‚‚ä¸Šæ°—é ˜ç£´æ±ŽéŸ»çŠ¬ä¸–ã€ã‚„や欺劼多ã„。
デフォルトã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—å½¢å¼ã‚‚指定ã—ã¦ã„ã‚‹ã‹ã‚‰ã§ã‚る。
diff \
--old-group-format='\begin{em}
%<\end{em}
' \
--new-group-format='\begin{bf}
%>\end{bf}
' \
--unchanged-group-format='%=' \
--changed-group-format='\begin{em}
%<\end{em}
\begin{bf}
%>\end{bf}
' \
old new
次ã«ã‚‚ã†å°‘ã—進んã 例を紹介ã™ã‚‹ã€‚ã“れã¯å·®åˆ†ãƒªã‚¹ãƒˆã‚’ã€
"plain English" スタイルã§è¡Œç•ªå·ã‚’書ã„ãŸãƒ˜ãƒƒãƒ€ã¨ã¨ã‚‚ã«å‡ºåŠ›ã™ã‚‹ã€‚
diff \
--unchanged-group-format='' \
--old-group-format='-------- %dn line%(n=1?:s) deleted at %df:
%<' \
--new-group-format='-------- %dN line%(N=1?:s) added after %de:
%>' \
--changed-group-format='-------- %dn line%(n=1?:s) changed at %df:
%<-------- to:
%>' \
old new
行グループ形å¼ã‚’指定ã™ã‚‹ã«ã¯ã€ diff を以下ã®ã‚ªãƒ—ションã®ã©ã‚Œã‹ 1
ã¤ã‚’指定ã—ã¦å®Ÿè¡Œã™ã‚‹ã€‚ 4 ã¤ã¾ã§ã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—å½¢å¼ã‚’指定ã§ã
儿Œ‡å®šãŒãれãžã‚Œè¡Œã‚°ãƒ«ãƒ¼ãƒ— 1 ã¤ã«å¯¾å¿œã™ã‚‹ã€‚ FORMAT ã«ã¯ã‚·ã‚§ãƒ«ã®ãƒ¡ã‚¿-
ャラクタãŒå…¥ã£ã¦ã„ã‚‹ã“ã¨ãŒå¤šã„ã®ã§ã€ クォートã™ã‚‹ã¹ã„任△è¹Î‘
--old-group-format=FORMAT
ã“れらã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—㯠1 番目ã®ãƒ•ァイルã ã‘ã«ã‚る行ã‹ã‚‰ãªã‚‹ hunk
ã§ã‚る。 デフォルト㮠old グループ形å¼ã¯ã€changed
グループ形å¼ãŒæŒ‡å®šã•れã¦ã„れã°
ãれã¨åŒã˜ã«ãªã‚‹ã€‚ã•れã¦ã„ãªã‘れã°è¡Œã‚°ãƒ«ãƒ¼ãƒ—ã¯ãã®ã¾ã¾ã®ã‹ãŸã¡ã§å‡ºåŠ›ã•れる。
--new-group-format=FORMAT
ã“れらã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—㯠2 番目ã®ãƒ•ァイルã ã‘ã«ã‚る行ã‹ã‚‰ãªã‚‹ hunk
ã§ã‚る。 デフォルト㮠new グループ形å¼ã¯ã€changed
グループ形å¼ãŒæŒ‡å®šã•れã¦ã„れã°
ãれã¨åŒã˜ã«ãªã‚‹ã€‚ã•れã¦ã„ãªã‘れã°è¡Œã‚°ãƒ«ãƒ¼ãƒ—ã¯ãã®ã¾ã¾ã®ã‹ãŸã¡ã§å‡ºåŠ›ã•れる。
--changed-group-format=FORMAT
ã“れらã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—ã¯ä¸¡æ–¹ã®ãƒ•ァイルã®è¡Œã‹ã‚‰ãªã‚‹ hunk ã§ã‚る。
デフォルト㮠changed グループ形å¼ã¯ã€ old グループ㨠new
グループã®å½¢å¼ã‚’連çµã—ãŸã‚‚ã®ã§ã‚る。
--unchanged-group-format=FORMAT
ã“れらã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—ã¯ä¸¡æ–¹ã®ãƒ•ァイルã«å…±é€šã®è¡Œã‹ã‚‰ãªã‚‹ hunk
ã§ã‚る。 デフォルト㮠unchanged グループ形å¼ã¯ã€
行グループをãã®ã¾ã¾ã®ã‹ãŸã¡ã§å‡ºåŠ›ã™ã‚‹ã‚‚ã®ã§ã‚る。
ã‚å“ãƒè¥ãƒç’ãƒå½å¤å„æ›
%< 1 番目ã®ãƒ•ァイルã‹ã‚‰ã®è¡Œã‚’æ„味ã™ã‚‹ã€‚è¡Œæœ«å°¾ã®æ”¹è¡Œã‚‚å«ã‚€ã€‚ å„行ã¯
old 行形å¼ã«ã‚ˆã£ã¦æ•´å½¢ã•れる。
%> 2 番目ã®ãƒ•ァイルã‹ã‚‰ã®è¡Œã‚’æ„味ã™ã‚‹ã€‚è¡Œæœ«å°¾ã®æ”¹è¡Œã‚‚å«ã‚€ã€‚ å„行ã¯
new 行形å¼ã«ã‚ˆã£ã¦æ•´å½¢ã•れる。
%= 両方ã®ãƒ•ァイルã§å…±é€šãªè¡Œã‚’æ„味ã™ã‚‹ã€‚è¡Œæœ«å°¾ã®æ”¹è¡Œã‚‚å«ã‚€ã€‚ å„行ã¯
unchanged 行形å¼ã«ã‚ˆã£ã¦æ•´å½¢ã•れる。
%% `%' を表ã™ã€‚
%c'C'' ã“ã“ã§ C ã¯æ–‡å— 1 æ–‡å—ã§ã€C を表ã™ã€‚ C
ã«ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚„ã‚¢ãƒã‚¹ãƒˆãƒãƒ•ã‚£ã¯æŒ‡å®šã§ã„覆ã 例ãˆã° `%c':''
ã¯ã‚³ãƒãƒ³ã‚’表ã—ã€ã“れ㯠if-then-else å½¢å¼ã® then
部分ã§ã‚‚コãƒãƒ³ã¨ã—ã¦è§£é‡ˆã•れる。通常ã¯ã‚³ãƒãƒ³ã¯ then
部分ã®çµ‚ã‚りã¨ã—ã¦æ‰±ã‚れる。
%c'\O''
ã“ã“ã§ 0 㯠1 æ¡ã‹ã‚‰ 3 æ¡ã¾ã§ã® 8 進数å—ã§ã‚りã€8 進ã®ã‚³ãƒ¼ãƒ‰ 0
ã«å¯¾å¿œã™ã‚‹æ–‡å—を表ã™ã€‚例ãˆã° `%c'\0'' ã¯ãƒŠãƒ«æ–‡å—ã«ãªã‚‹ã€‚
(A=B?T:E)
A ㌠B ã«ç‰ã—ã„å ´åˆã¯ T〠ç‰ã—ããªã„å ´åˆã¯ E。 A 㨠B ã¯ãれãžã‚Œ
10 進数ã®å®šæ•°ã‹ã€ä¸Šæ°—里茲Δ鵬鮗瓩気è´è©ˆæº 1 ã¤ã§ã‚る。
ã“ã®å½¢å¼æŒ‡å®šã¯ A ã®å€¤ãŒ B ã¨ç‰ã—ã‘れ㰠T ã¨ç‰ä¾¡ã§ã‚りã€
ãれ以外ã®å ´åˆã¯ E ã¨ç‰ä¾¡ã§ã‚る。
例ãˆã° `%(N=0?no:%dN) line%(N=1?:s)' 㯠N (new
ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®è¡Œæ•°) ㌠0 ãªã‚‰ `no lines' ã¨ãªã‚Šã€ N ãŒ
1 ãªã‚‰ `1 line' ã¨ãªã‚Šã€ãれ以外ã®å ´åˆã¯ `%dN lines' ã¨ãªã‚‹ã€‚
FN ã“ã“ã§ F 㯠printf(3) ã®å¤‰æ›æŒ‡å®šã§ã€ N
ã¯ä»¥ä¸‹ã®æ–‡å—ã®ã©ã‚Œã‹ã§ã‚る。 「F ã§æ•´å½¢ã•れ㟠N ã®å€¤ã€ を表ã™ã€‚
e old ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ç›´å‰ã®è¡Œã®è¡Œç•ªå·ã€‚
f old ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®æœ€åˆã®è¡Œç•ªå·ã€‚e + 1
ã«ç‰ã—ã„。
l old ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®æœ«å°¾ã®è¡Œç•ªå·ã€‚
m old ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ç›´å¾Œã®è¡Œã®è¡Œç•ªå·ã€‚l + 1
ã«ç‰ã—ã„。
n old ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®è¡Œæ•°ã€‚l - f + 1 ã«ç‰ã—ã„。
E, F, L, M, N
上気汎瑛佑 new ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ã‚‚ã®ã€‚
printf å¤‰æ›æŒ‡å®šã«ã¯ %d, %o, %x, %X (ãれãžã‚Œ 10 進, 8 進, å°æ–‡å— 16 進,
å¤§æ–‡å— 16 進) ãŒä½¿ãˆã‚‹ã€‚ `%' ã®å¾Œã«ã¯ä»¥ä¸‹ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é †ã«æŒ‡å®šã§ã„襦
`-' (左詰ã‚ã®æŒ‡å®š)ã€æ•´æ•° (ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®æœ€ä½Žå¹…)ã€ ãƒ”ãƒªã‚ªãƒ‰ã¨æ•°å€¤
(数値ã¯çœç•¥å¯; æ¡æ•°ã®æœ€å°å€¤) ã§ã‚る。 例ãˆã° `%5dN' 㯠new
ファイルã‹ã‚‰ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®è¡Œæ•°ã‚’〠5 æ–‡å—å¹…ã®ãƒ•ィールドã«ã€ printf ã®
"%5d" 書å¼ã‚’用ã„ã¦è¡¨ç¤ºã™ã‚‹ã€‚
è¡åžå½æŽå¼
行形å¼ã¯ã€å…¥åŠ›ã‹ã‚‰å–å¾—ã•れãŸå„行を if-then-else å½¢å¼ã®
行グループã¨ã—ã¦å‡ºåŠ›ã•れる際ã®åˆ¶å¾¡ã‚’行ã†ã€‚
例ãˆã°ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ†ã‚¥å¥½ç®¸è™œçЬå 儿紘充┠1 æ–‡å—を表示ã—㦠テ-
ストを出力ã™ã‚‹ã€‚å‡ºåŠ›ã®æœ€åˆã®æ¡ã¯ã€å‰Šé™¤è¡Œã§ã¯ `-'ã€ è¿½åŠ è¡Œã§ã¯ `|'
ã¨ãªã‚Šã€å¤‰æ›´ã•れãªã‹ã£ãŸè¡Œã§ã¯ã‚¹ãƒšãƒ¼ã‚¹ã¨ãªã‚‹ã€‚
ã“ã®å½¢å¼ã§ã¯ã€æ”¹è¡ŒãŒå¿…è¦ãªéƒ¨åˆ†ã«ã¯æ”¹è¡Œã‚’入れã¦å‡ºåŠ›ã™ã‚‹ã€‚
diff \
--old-line-format='-%l
' \
--new-line-format='|%l
' \
--unchanged-line-format=' %l
' \
old new
行形å¼ã‚’指定ã™ã‚‹ã«ã¯ã€ä»¥ä¸‹ã®ã‚ªãƒ—ションã®ã©ã‚Œã‹ã‚’用ã„る。 FORMAT
ã«ã¯ã‚·ã‚§ãƒ«ã®ãƒ¡ã‚¿ã‚¥ç¤‡è–€ã‚¿ãŒå…¥ã£ã¦ã„ã‚‹ã“ã¨ãŒå¤šã„ã®ã§ã€ クォートã™ã‚‹ã¹-
ã§ã‚ã‚ã†ã€‚
--old-line-format=FORMAT
1 番目ã®ãƒ•ァイルã‹ã‚‰ã®è¡Œã ã‘ã‚’æ•´å½¢ã™ã‚‹ã€‚
--new-line-format=FORMAT
2 番目ã®ãƒ•ァイルã‹ã‚‰ã®è¡Œã ã‘ã‚’æ•´å½¢ã™ã‚‹ã€‚
--unchanged-line-format=FORMAT
両方ã®ãƒ•ァイルã«å…±é€šã®è¡Œã‚’æ•´å½¢ã™ã‚‹ã€‚
--line-format=FORMAT
å…¨ã¦ã®è¡Œã‚’æ•´å½¢ã™ã‚‹ã€‚上-
ã®å…¨ã¦ã®ã‚ªãƒ—ションを指定ã—ãŸå ´åˆã«ç‰ã—ã„。
行形å¼ã§ã¯ã€æ™®é€šã®æ–‡å—ã¯ãれ自身を表ã™ã€‚å¤‰æ›æŒ‡å®šã¯ `%'
ã§å§‹ã¾ã‚Šã€ä»¥ä¸‹ã®å½¢å¼ã‚’ã¨ã‚‹:
%l 行ã®å†…容をæ„味ã™ã‚‹ã€‚è¡Œæœ«å°¾ã®æ”¹è¡Œã¯ã‚ã£ã¦ã‚‚å«ã¾ãªã„。
ã“ã®å½¢å¼ã§ã¯ã€è¡Œã«æ”¹è¡ŒãŒã‚ã‚‹ã‹ã©ã†ã‹ã¯ç„¡è¦–ã•れる。
%L 行ã®å†…容をæ„味ã™ã‚‹ã€‚è¡Œæœ«å°¾ã®æ”¹è¡ŒãŒã‚れã°ãれもå«ã‚€ã€‚
è¡Œã«æ”¹è¡ŒãŒãªã‘れã°ã€æ”¹è¡Œã¯ãªã„ã¾ã¾ã«ãªã‚‹ã€‚
%% `%' を表ã™ã€‚
%c'C'' ã“ã“ã§ C ã¯æ–‡å— 1 æ–‡å—ã§ã€C を表ã™ã€‚ C
ã«ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚„ã‚¢ãƒã‚¹ãƒˆãƒãƒ•ã‚£ã¯æŒ‡å®šã§ã„覆ã 例ãˆã° `%c':''
ã¯ã‚³ãƒãƒ³ã‚’表ã—ã€ã“れ㯠if-then-else å½¢å¼ã® then
部分ã§ã‚‚コãƒãƒ³ã¨ã—ã¦è§£é‡ˆã•れる。通常ã¯ã‚³ãƒãƒ³ã¯ then
部分ã®çµ‚ã‚りã¨ã—ã¦æ‰±ã‚れる。
%c'\O''
ã“ã“ã§ 0 㯠1 æ¡ã‹ã‚‰ 3 æ¡ã¾ã§ã® 8 進数å—ã§ã‚りã€8 進ã®ã‚³ãƒ¼ãƒ‰ 0
ã«å¯¾å¿œã™ã‚‹æ–‡å—を表ã™ã€‚例ãˆã° `%c'\0'' ã¯ãƒŠãƒ«æ–‡å—ã«ãªã‚‹ã€‚
Fn ã“ã“ã§ F 㯠printf(3) ã®å¤‰æ›æŒ‡å®šã§ã€ F
ã«ã‚ˆã‚Šæ•´å½¢ã•れãŸè¡Œç•ªå·ã‚’表ã™ã€‚ 例ãˆã° `%.5dN' ã¯è¡Œç•ªå·ã‚’ `%.5d'
ã¨ã„ã†æ›¸å¼ã§æ•´å½¢ã—ã¦è¡¨ç¤ºã™ã‚‹ã€‚ printf å¤‰æ›æŒ‡å®šã®è©³ç´°ã¯ã€ä¸Š-
ã®è¡Œã‚°ãƒ«ãƒ¼ãƒ—å½¢å¼ã®ã‚µãƒ–セクションを見よ。
デフォルトã®è¡Œå½¢å¼ã¯ `%l'
ã«æ”¹è¡Œæ–‡å—ã‚’ç¶šã‘ãŸã‚‚ã®ã§ã‚る。入力ã«ã‚¿ãƒ–æ–‡å—ãŒã‚りã€
ãれãŒå‡ºåŠ›è¡Œã®æ¡æƒãˆã«é‡è¦ã§ã‚ã‚‹å ´åˆã«ã¯ã€`%l' ã‚„ `%L' ã®è¡ŒæŒ‡å®šã‚’
タブストップã®ç›´å¾Œã«ç½®ãã¨ã‚ˆã„ (ã™ãªã‚ã¡ `%l' ã‚„ `%L'
ã®å‰ã«ã‚¿ãƒ–æ–‡å—ã‚’ç½®ã‘ã°ã‚ˆã„)。 ã‚ã‚‹ã„㯠-t
オプションを用ã„ã‚‹ã®ã‚‚よã„ã ã‚ã†ã€‚
行形å¼ã¨è¡Œã‚°ãƒ«ãƒ¼ãƒ—å½¢å¼ã‚’åŒæ™‚ã«ç”¨ã„ã‚‹ã¨ã€æ§˜ã€…ãªå½¢å¼æŒ‡å®šãŒå¯èƒ½ã¨ãªã‚‹ã€‚
例ãˆã°ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ diff ã®é€šå¸¸ã®å½¢å¼ã¨ä¼¼ãŸå½¢å¼ã®æŒ‡å®šã§ã‚る。
ã“れを修æ£ã™ã‚Œã°ã€diff ã®å‡ºåŠ›ã‚’å¾®èª¿æ•´ã™ã‚‹ã“ã¨ãŒå¯èƒ½ã«ãªã‚‹ã€‚
diff \
--old-line-format='< %l
' \
--new-line-format='> %l
' \
--old-group-format='%df%(f=l?:,%dl)d%dE
%<' \
--new-group-format='%dea%dF%(F=L?:,%dL)
%>' \
--changed-group-format='%df%(f=l?:,%dl)c%dF%(F=L?:,%dL)
%<---
%>' \
--unchanged-group-format='' \
old new
ãƒå¦ã‚ãƒèã‚ãƒè‚ãƒè ãç³æ¯ç¾è¼ƒ
diff ã¸ã® 2 ã¤ã®å¼•æ•°ãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã ã£ãŸå ´åˆã€
両方ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãれãžã‚Œã®ãƒ•ァイルãŒã€
ファイルåã®ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«æ¯”較ã•れる。
通常ã¯ãƒ•ァイルã®ãƒšã‚¢ã«é•ã„ãŒå…¨ããªã‘れã°ã€ä½•も出力ã—ãªã„。 ã—ã‹ã— -s
オプションを用ã„ã‚‹ã¨ã€åŒä¸€ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚å ±å‘Šã™ã‚‹ã€‚
両方ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«åŒåã®ã‚µãƒ–ディレクトリãŒã‚ã‚‹ã¨ã€ 通常 diff
ã¯å ±å‘Šã ã‘ã—ã¦ã‚µãƒ–ディレクトリ以下ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ¯”較ã—ãªã„。 ã—ã‹ã— -r
オプションを用ã„ã‚‹ã¨ã€
ディレクトリツリーを辿れるé™ã‚Šã€å¯¾å¿œã™ã‚‹å…¨ã¦ã®ãƒ•ァイルを比較ã™ã‚‹ã€‚
片方ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã ã‘ã«ã‚るファイルã«å¯¾ã—ã¦ã¯ã€ diff
ã¯é€šå¸¸å˜åœ¨ã™ã‚‹ãƒ•ァイルã®å†…容を表示ã›ãšã€
ファイルãŒç‰‡æ–¹ã«ã‚ã£ã¦ä»–æ–¹ã«ã¯ãªã„ã“ã¨ã ã‘ã‚’å ±å‘Šã™ã‚‹ã€‚ diff
ã®æŒ¯èˆžã„を変ãˆã¦ã€
ä»–æ–¹ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚‚ファイルãŒç©ºã®çŠ¶æ…‹ã§å˜åœ¨ã™ã‚‹ã‹ã®ã‚ˆã†ã«
動作ã•ã›ã‚‹ã“ã¨ã‚‚ã§ã„襦ã™ãªã‚ã¡ diff
ã¯å®Ÿéš›ã«å˜åœ¨ã™ã‚‹ãƒ•ァイルã®å†…容をã™ã¹ã¦å‡ºåŠ›ã™ã‚‹ã€‚
(ã“ã®å‡ºåŠ›ã¯ã€ãƒ•ァイルãŒç¬¬ 1 ディレクトリã«ã‚れã°å‰Šé™¤ã€ 第 2
ディレクトリã«ã‚ã‚Œã°æŒ¿å…¥ã¨ãªã‚‹ã€‚) ã“ã®æŒ‡å®šã«ã¯ -N オプションを使ã†ã€‚
å¤ã„ã»ã†ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¤§ã„淵侫.ã…襪ã‚ã£ã¦ã€
æ–°ã—ã„ã»ã†ã«ã¯ãªã„å ´åˆã€ -N オプションã®ä»£ã‚り㫠-P
オプションを用ã„ã‚‹ã¨ãƒ‘ッãƒã®å¤§ã„æ°—é® ã•ãã§ã„襦 -P オプション㯠-N
オプションã¨ä¼¼ã¦ã„ã‚‹ãŒã€ç¬¬ 2 ディレクトリã«ã‚るファイルã®å†…容ã ã‘ã‚’
å‡ºåŠ›ã«æŒ¿å…¥ã—ã€ç¬¬ 1 ディレクトリã ã‘ã«ã‚るファイルã¯ç„¡è¦–ã™ã‚‹
(ã™ãªã‚ã¡ã€è¿½åŠ ã•れãŸãƒ•ァイルã ã‘を扱ã†)。
ãã—ã¦ã€ãƒ‘ッãƒã‚’当ã¦ã‚‹å‰ã«æ¶ˆåŽ»ã•れãŸãƒ•ァイルを削除ã™ã‚‹ã‚ˆã†ã€
パッãƒã®å…ˆé ã«ãƒ‘ッãƒã‚’当ã¦ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¸ã®æŒ‡ç¤ºã‚’書ã。
ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®æ¯”較時ã«ç‰¹å®šã®ãƒ•ァイルを無視ã•ã›ã‚‹ã«ã¯ã€ -x PATTERN
オプションを用ã„る。シェルã¨ã¯ç•°ãªã‚Šã€ãƒ•ァイルåã®å…ˆé ã®ãƒ”リオドã¯ã€
パターン先é ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã«ãƒžãƒƒãƒã™ã‚‹ã€‚
シェルã«ã‚ˆã£ã¦å±•é–‹ã•れãªã„よã†ã€ PATTERN ã¯ã‚¯ã‚©ãƒ¼ãƒˆå®œç½Žå¿µå‘‚Δ戮ã§ã‚る。
例ãˆã° `-x '*.[ao]'' 㯠`.a' ã‚„ `.o'
ã§çµ‚ã‚ã‚‹åå‰ã®ãƒ•ァイルをã™ã¹ã¦ç„¡è¦–ã™ã‚‹ã€‚
ã“ã®ã‚ªãƒ—ションã¯ã€è¤‡æ•°æŒ‡å®šã™ã‚‹ã¨ãれãžã‚ŒãŒé‚‘ã«ãªã‚‹ã€‚ 例ãˆã° `-x 'RCS'
-x '*,v'' ã¨ã„ã†ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€ ファイルå㌠`RCS' ã ã£ãŸã‚Š
`*,v' ã§çµ‚ã‚るよã†ãª ファイルã¨ã‚µãƒ–ディレクトリをã™ã¹ã¦ç„¡è¦–ã™ã‚‹ã€‚
è¿å±ã‚è 値
diff ã¯ä»¥ä¸‹ã®å€¤ã®ã©ã‚Œã‹ã§çµ‚了ã™ã‚‹:
0 å…¨ã変更ãŒãªã‹ã£ãŸã€‚
1 変更ãŒã‚ã£ãŸã€‚
2 何らã‹ã®ã‚¨ãƒ©ãƒ¼ãŒèµ·ã“ã£ãŸã€‚
é–æ…é€é çŒç›®
cmp(1), comm(1), diff3(1), ed(1), patch(1), pr(1), sdiff(1)
æ³èºæ„
プãƒã‚°ãƒ©ãƒ ã®ãƒã‚°ã«ã¤ã„ã¦ã¯ bug-gnu-utils@gnu.org ã¸å ±å‘Šã—ã¦ãã ã•ã„。
ãƒšãƒ¼ã‚¸ã®æ›´æ–°ã¯ Ragnar Hojland Espinosa <ragnar@ragnar-hojland.com>
ãŒè¡Œã£ã¦ã„ã¾ã™ã€‚