Ist es möglich, das erste Argument einer BASH-Zeile in derselben Zeile wiederzuverwenden?

Ist es möglich, das erste Argument einer BASH-Zeile in derselben Zeile wiederzuverwenden?

Ich mache das in BASH

echo test "$1"

..erwarte, zu bekommen..

test test

..aber ich verstehe..

test

Ist das möglich? Es würde mir das Leben leichter machen, da ich eine Liste von Dateien hätte und so etwas machen könnte wiemv a/b/test.py proj_copy/$1

Antwort1

Sie können die Verlaufserweiterung verwenden

$ 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

!#
Die gesamte bisher eingegebene Befehlszeile.

:^
Das erste Argument


Sie können auch Klammererweiterung verwenden

$echo test{,}
test test

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

verwandte Informationen