ls -l을 사용하여 기본 줄 인쇄를 비활성화합니다.

ls -l을 사용하여 기본 줄 인쇄를 비활성화합니다.

ls -l출력 상단에 총 행(총 블록 수)을 추가합니다. 출력에서 이 줄을 억제하는 직접적인 방법이 있습니까? 첫 번째 줄을 삭제하기 위해 출력을 다른 명령으로 파이프할 수 있다는 것을 알고 있지만 처음에 줄을 억제하는 간단한 옵션이 누락된 것인지 궁금합니다.

답변1

total아니요, 최소한 디렉터리 내용(인수 없이 현재 디렉터리 포함)을 나열할 때는 행을 삭제하는 간단한 옵션을 놓치지 마세요 . 예를 들어 GNU의 경우 , 및 옵션 을 사용하면 다음 줄 이 표시됩니다 ls.-l-g-n-o-stotal표시 예정, 비활성화할 수 있는 옵션이 없습니다.

if (format == long_format || print_block_size)
{
  const char *p;
  char buf[LONGEST_HUMAN_READABLE + 1];

  DIRED_INDENT ();
  p = _("total");
  DIRED_FPUTS (p, stdout, strlen (p));
  DIRED_PUTCHAR (' ');
  p = human_readable (total_blocks, buf, human_output_opts,
                      ST_NBLOCKSIZE, output_block_size);
  DIRED_FPUTS (p, stdout, strlen (p));
  DIRED_PUTCHAR ('\n');
}

이것은 실제로POSIX에 의해 시행됨.

그러나 나열할 디렉터리가 아닌 파일을 지정하면 ls합계가 표시되지 않습니다. 이 -d옵션을 사용하면 설명된 대로 디렉터리가 파일로 처리되어 원하는 결과가 생성됩니다.코스타스:

ls -ld *

동일한 출력을 생성합니다

ls -l

total확장할 때 쉘에 숨겨진 파일이 포함되어 있지 않고 *( dotglob) 현재 디렉토리에 확장이 *최대 명령줄 길이를 초과할 정도로 많은 파일이 포함되어 있지 않은 한 이 줄을 뺍니다 .

디렉터리( ls -ld /path/to/directory/*)를 지정할 수도 있지만 출력에는 와 달리 지정된 경로의 파일이 나열됩니다 ls -l /path/to/directory.

관련 정보