동일한 라인에서 BASH 라인의 첫 번째 인수를 재사용할 수 있습니까?

동일한 라인에서 BASH 라인의 첫 번째 인수를 재사용할 수 있습니까?

나는 BASH에서 이것을한다

echo test "$1"

..얻을 것으로 예상됩니다..

test test

..하지만 알겠어..

test

이게 가능한 일인가요? 다음과 같은 일을 할 수 있는 목록 파일이 있기 때문에 내 인생이 더 쉬워질 것입니다.mv a/b/test.py proj_copy/$1

답변1

기록 확장을 사용할 수 있습니다

$ echo test !#:^
echo test test
test test

$ echo a/b/test.py proj_copy/!#:^
echo a/b/test.py proj_copy/a/b/test.py
a/b/test.py proj_copy/a/b/test.py

!#
지금까지 입력한 전체 명령줄입니다.

:^
첫 번째 인수


중괄호 확장을 사용할 수도 있습니다.

$echo test{,}
test test

$echo {,proj_copy}/a/b/test.py
/a/b/test.py proj_copy/a/b/test.py

관련 정보