2017-04-06 9 views
0

변수에 mkdir 명령의 출력을 할당하려고합니다. 그래서 나는 그 디렉토리를 더 사용할 수있다.변수에 mkdir 명령 출력 할당

-bash-4.1$ pwd 
/user/ravi/myscripts/tmpdata 
-bash-4.1$ OUTPUT=$(mkdir tmpbkp.`date +%F`) 
-bash-4.1$ ls | grep tmp 
tmpbkp.2017-04-06 
-bash-4.1$ echo "$OUTPUT" 

그러나 디렉토리 이름이 변수에 지정되지 않습니다. 내가 틀린 곳에서 나를 교정 해 주실 수 있겠습니까? 당신은 그 자체로 mkdir 명령을 실행하면

답변

6

, 그것은 생산 얼마나 많은 출력 봐 :

$ mkdir foo 
$ 

없음! 당신 MKDIR은 위해 인수를 생성하는 명령 치환을 사용하면

이 얼마나 여분의 출력을 보면 당신이 얻을 :

$ mkdir tmpbkp.`date +%F` 
$ 

없음!

$() 안에 넣으면 출력이 출력되지 않습니다.

일부 출력을 생성하는 mkdir (최소한 GNU 버전)에는 -v 옵션이 있지만 실제로 원하는 것은 아닙니다.

변수의 디렉토리 이름을 원하십니까? 먼저 변수에 넣은 다음 mkdir을 호출하십시오.

$ thedir=tmpbkp.`date +%F` 
$ mkdir $thedir 
$ echo $thedir 
tmpbkp.2017-04-06 
$ 
+0

이것은 kike a champ입니다. 놀랍습니다. 감사합니다. –