dpkg의 구성 파일 프롬프트에 대한 diff 옵션 지정

dpkg의 구성 파일 프롬프트에 대한 diff 옵션 지정

구성 파일이 수정되면 dpkg수행할 작업을 묻는 메시지가 표시됩니다.

Configuration file '/etc/apache2/mods-available/ssl.conf'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** ssl.conf (Y/I/N/O/D/Z) [default=N] ? 

을 선택하면 현재 새 프로필에서 실행 D됩니다 .diff -Nu

다른 옵션을 어떻게 지정하나요 diff?특히, 나는 종종 -b.

답변1

할 수 없는 것 같습니다. diff 옵션은 dpkg소스 코드에 하드코딩되어 있습니다. ~에서src/configure.c:

            /* Child process. */
            char cmdbuf[1024];

            sprintf(cmdbuf, DIFF " -Nu %.250s %.250s | %.250s",
                    str_quote_meta(old), str_quote_meta(new),
                    command_get_pager());

            command_shell(cmdbuf, _("conffile difference visualizer"));

DIFF매크로입니다lib/dpkg/dpkg.h그리고 로 정의되었습니다 "diff". 그래서 이것은 diff -Nu하드코딩되었습니다.

이것은 아마도데비안 버그 #380332.

관련 정보