디렉토리의 모든 파일을 완전히 표시하지만 파일 사이에 약간의 공백이 있습니다.

디렉토리의 모든 파일을 완전히 표시하지만 파일 사이에 약간의 공백이 있습니다.

Bash 3.2.52가 설치된 CentOS에서 현재 디렉터리의 모든 파일을 완전히 표시하고 싶습니다.

cat *

모든 파일의 출력이 표시되지만 정확히는병치된하나씩…

어떤 파일이 어디서 시작되는지 더 쉽게 이해할 수 있게 해주는 장식적인 간격이 누락되었습니다.

대신에:

file-output_1
file-output_2

나는 말하고 싶다 :

file_output_1

file_output_2

각 파일 출력(마지막 파일 제외) 아래에 1~2개의 빈 줄과 같은 공간이 있도록 cat 및 shell glob 명령을 어떻게 개선할 수 있습니까?

답변1

파일 이름 헤더와 공백을 가져오는 것이 마음에 들지 않으면 최소한 head/의 GNU Coreutils 구현을 사용할 수 있습니다.tail

tail -n +1 *

또는

head -n -0 *

답변2

more대신 이 명령을 사용할 수 있습니다 cat. 예를 들면 다음과 같습니다.

$ touch file{01..05}
$ for i in {01..05};do echo string$i > file$i;done

$ ll
total 40
-rw-rw-r-- 1 vagrant vagrant 9 Sep  6 20:38 file01
-rw-rw-r-- 1 vagrant vagrant 9 Sep  6 20:38 file02
-rw-rw-r-- 1 vagrant vagrant 9 Sep  6 20:38 file03
-rw-rw-r-- 1 vagrant vagrant 9 Sep  6 20:38 file04
-rw-rw-r-- 1 vagrant vagrant 9 Sep  6 20:38 file05

이제 다음을 사용하십시오 more.

$ more file*
::::::::::::::
file01
::::::::::::::
string1
::::::::::::::
file02
::::::::::::::
string2
::::::::::::::
file03
::::::::::::::
string3
::::::::::::::
file04
::::::::::::::
string4
::::::::::::::
file05
::::::::::::::
string5

관련 정보