날짜는 문자열 리터럴 날짜를 출력합니다.

날짜는 문자열 리터럴 날짜를 출력합니다.

저는 셸 스크립트를 작성하고 Window 명령줄을 사용하여 실행하고 있습니다.

나는 쉘 스크립트를 작성하는 방법을 배우고 있습니다... 마치 첫 번째 장의 절반쯤 다가온 것처럼, 그것이 제가 얼마나 초보자인지 알 수 있습니다.

date명령만 사용 하면 날짜가 생성됩니다.

내가 사용한다면

echo -n `"I am testing: " date`

그것은 다음을 생산합니다 :

I am testing: date

내가 뭘 잘못했나요?

나는 그것이 생산되기를 원합니다 :

I am testing: Sun June 11 11:30:47

제안?

답변1

echo -n `"I am testing: " date`

as 인수를 사용하여 I am testing: 명령을 실행 date하고 출력을 수집한 후 주제를 추가 인수로 분할+glob 에 전달하려고 합니다 echo. 귀하의 시스템에 해당 이름의 명령이 없을 가능성이 높기 때문에 이로 인해 오류가 발생하기를 바랍니다.

아마도 당신은 다음을 원할 것입니다:

printf 'I am testing: %s' "$(date)"

date우리는 (더 이상 사용되지 않는 명령 대체 대신 현대적인 형태의 명령 대체를 사용하여 ) 전달된 출력을 수집합니다 $(...)(특히 예를 들어 비표준 옵션이 필요한 경우 대신 사용해야 함).`...`printfecho-n

또는 날짜 형식을 지정할 수 있는 bash사람을 사용하세요.printf

printf 'I am testing: %(%c)T' -1

( -1지금을 의미합니다. 에서 ksh93대신 %(...)T사용할 수 있습니다 now.)

줄 구분 기호를 생략하고 싶지 않은 경우( -n일부 구현 echo의 경우 ) 다음을 사용할 수 있습니다.

date '+I am testing: %c'

date날짜를 어떤 형식으로 출력할지 알려줍니다 .

질문에 표시된 형식을 얻으려면 위의 내용 %c으로 바꾸십시오 .%a %B %d %TSun June 11 11:30:47

관련 정보