2016-08-27 1 views
4

나는 자세한 모드를 사용하여 스크립트를 작성하고 있지만 명령 출력에 접두사를 설정하고 싶습니다 (주로 출력을 좋게 보임). 예를 들어접두사를 배쉬 (verbose) 모드로 설정하는 방법

스크립트 :이 출력 줄 것이다

#!/bin/bash -v 

pwd 
hostname 

:

pwd 
/home/username 
hostname 
myawesomehost 

하지만 (특히 $ 기호)의 출력을하고 싶습니다을 :

$ pwd 
/home/username 
$ hostname 
myawesomehost 

자세한 출력을위한 접두어를 설정하는 방법이 있습니까?

답변

3

사용할 수 set -xPS4 (추적 가능) :

$ pwd 
/home/username 
$ hostname 
myawesomehost 
+0

나는이 솔루션을 가진 유일한 문제는 -x'가 인쇄됩니다'이다 :로

#!/bin/bash # prompt for trace commands PS4='$ ' # enable trace set -x # remaining script pwd hostname 

이 출력을 생성 'echo "$ (pwd)"'''$$ pwd'를 출력하도록 두번의 임베디드 커맨드가 있습니다. 거기에'-x'를 사용하는 것을 막을 수있는 방법이 있습니까? –

+0

흠. 나는 명령 대체를 위해'$$'을 피하는 방법을 확실히 알고있다. 나는 뭔가를 찾으려고 노력할 것이다. – anubhava