쉘에서 일반적인 커맨드 대체에 대한 예시이다.


$ filename=/home/www/file1

$ firstchar=$(echo $filename | cut -c1)



/를 ^로 변경한다


$ echo $filename | tr "$firstchar" "^"

^users^steve^memos

$ filename=$(echo $filename | tr "$firstchar" "^")    

$ echo $filename

^users^steve^memos

$




커맨드 대체는 중첩될 수 있다.  $()안에 $()을 추가할 수 있는 커맨드 대체이다. 


변수에 첫 번째 문자가 나타날 때마다 다른 문자로 변경하려고 한다고 가정한 예시를 살펴본다.



$ filename=/home/www/file1

$ echo $filename | tr "$(echo $filename | cut -c1)" "^"

^home^www^file1



$ filename=$(echo $filename | tr "$(echo $filename | cut -c1)" "^")

$ echo $filename

^home^www^file1

$

Posted by '김용환'
,