터미널의 특수 매개변수와 이전 명령을 호출하는 마지막 매개변수를 $_
사용 하는 데 문제가 있습니다 .$_
gnome-terminal 의 명령에서는 작동하지 않습니다 cp
. 폴더를 만들거나 아래와 같이 $_ 파일을 사용할 mv
때 이런 일이 발생합니다.mv
cp
mkdir test
cp file.c $_
파일을 대상에 복사하는 대신 현재 디렉터리에 _filedir
.
mv
명령에서도 마찬가지입니다.
mkdir test
mv file.c $_
파일을 대상으로 이동하는 대신 이름을 이동합니다 _filedir
.
문제를 찾으려면 echo를 사용합니다.
$ mkdir test
$ echo $_
_filedir
$_를 cp 및 mv 명령과 함께 사용할 수 없는 이유는 무엇입니까?
답변1
$_ - 이전 명령의 마지막 인수를 제공합니다. 쉘이 시작되면 실행 중인 쉘 스크립트의 절대 파일 이름을 제공합니다. 당신이 실행할 때
mkdir test
mv file.c $_
mv와 cp가 별칭인지 확인하세요.
Bash에서 기록에 있는 이전 명령의 마지막 인수에 액세스하려면 !:$ 를 사용하세요. 예를 들면 다음과 같습니다.
> mkdir test
> mv file.c !:$
mv file.c test