To pytanie ma już odpowiedź tutaj:
Są chwile, kiedy chcę wziąć parametry poprzedniego polecenia i zastosować je do bieżącego polecenia.
Oto przykład
$ cat foo.txt
$ vim foo.txt
Chciałbym znaleźć skrót, aby nie musieć wpisywać vim foo.txt
To pytanie ma już odpowiedź tutaj:
Są chwile, kiedy chcę wziąć parametry poprzedniego polecenia i zastosować je do bieżącego polecenia.
Oto przykład
$ cat foo.txt
$ vim foo.txt
Chciałbym znaleźć skrót, aby nie musieć wpisywać vim foo.txt
Odpowiedzi:
Rozwiązaniem jest użyć !$
przykład:
vim !$
Aby pobrać ostatni parametr z ostatniego polecenia, użyj `! Foo: $, jak pokazano poniżej
cp foo bar
!cp:$ foobar
#This will copy foo to bar, and then bar to foobar
Możesz alternatywnie użyć następującej składni
cp foo bar
!!:$
!$
rozwija się tylko do ostatniego argumentu, nie wszystkie. I to nie odpowiada na twoje pytanie, jak stwierdzono - czy chcesz zastąpić komendę jak w vim "$(locate foo.txt)"
?
!*
- gnu.org/software/bash/manual/bashref.html#History-Interaction
~/foo.txt
jest drukowany przezlocate
.