![$() 내부에서 작동하기 위해 sed의 & 변수를 사용할 수 있습니까? [복사]](https://linux55.com/image/51096/%24()%20%EB%82%B4%EB%B6%80%EC%97%90%EC%84%9C%20%EC%9E%91%EB%8F%99%ED%95%98%EA%B8%B0%20%EC%9C%84%ED%95%B4%20sed%EC%9D%98%20%26amp%3B%20%EB%B3%80%EC%88%98%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
$() 안에 &를 넣어서 &가 1,2,3,4로 대체되고 1이 추가될 때마다 다음 명령문이 작동하는지 잘 모르겠습니다.
echo 1 2 3 4 | tr ' ' '\n' | sed "s/.*/$(echo expr 1 + &)/"
위의 진술은 작동하지 않습니다
나는 출력을 얻습니다 :
expr 1 +
expr 1 +
expr 1 +
expr 1 +
답변1
그렇지 않으면필요이를 수행하기 위한 sed
몇 가지 다른 옵션은 다음과 같습니다.
$ echo 1 2 3 4 | tr ' ' '\n' | while read f; do let f+=1; echo $f; done
2
3
4
5
$ echo 1 2 3 4 | tr ' ' '\n' | awk '{print $1+1}'
2
3
4
5
$ echo 1 2 3 4 | tr ' ' '\n' | perl -lne '$i=$_+1; print $i'
2
3
4
5
sed
스트림 편집기이므로 수학적 표현식을 실행할 수 없습니다.