[LINUX] Skrypt - wywołanie z argumentem

0

Mam taki skrypt:

cat test.s
gcc -c test.s
as -gstabs test.s -o test.o
ld test.o -o test
chmod 777 test

Chciałem go uczynić bardziej uniwersalnym, żeby moc go wywoływać z nazwa pliku jako argument i generalnie tak jak ten powyższy kod działa, tak ten nie:

Wywołuję:

./kompilacja test

cat $1*.s
gcc -c $1*.s
as -gstabs $1*.s -o $1*.o
ld $1*.o -o $1
chmod 777 $1

no i jednym słowem nie działa to jak powinno, może mi ktoś powiedzieć co tutaj robię źle?

0

a po co te gwiazdki za zmienną?

0

Bo gdzieś na google znalazłem, że łączenie odbywa się za pomocą gwiazdki :P

Ja staram się uzyskać to, że jeśli skrypt wywołuje z argumentem to ma być on trzonem nazw pliku, czyli tak:

./kompilacja test

test.s
test.c
test.o
test

czyli inaczej:

$1.s
$1.c
$1.o
$1

ale to nie działa.

0

bez gwiazdki mi działa, przykład wywołuje sam siebie:

 ./s1.sk s1
cat $1.sk
0
notexists napisał(a)

bez gwiazdki mi działa, przykład wywołuje sam siebie:

 ./s1.sk s1
cat $1.sk

Wydawało mi się, że to testowałem i nie działało w każdym razie teraz mam tak:

cat $1.s
gcc -c $1.s
as -gstabs $1.s -o $1.o
ld $1.o -o $1
chmod 777 $1
gdb $1

i działa, dzięki :)

0

proszę:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1