Jestem zmuszona często modyfikować plik index.html.
Chciałam zautomatyzować to za pomocą pliku.sh
cd /ścieżka_do_pliku
echo $1 $2 $3 > index.html
exit 0
Niestety za każdym razem wpisuję inny tekst i nie wiem ile zmiennych będzie mi potrzebnych w pliku.sh.
Czy istnieje jakiś inny sposób, żeby poleceniem echo dopisać kilka ciągów znaków niezależnie od ilości słów?
Bardzo dziękuję za pomoc :)
proponuję:
echo $@ > index.html
Tu jest strona z ciekawymi przykładami operowania argumentami:
https://linuxconfig.org/how-do-i-print-all-arguments-submitted-on-a-command-line-from-a-bash-script
Bardzo dziękuję:)
Niezwykle trafna uwaga, jakże prosta, a jednak wypadła z głowy.
Czy znasz może jeszcze patent jak podać przejście do nowej linii jako parametr?
Załóżmy, że potrzebuje, aby strona wyświetlała zawartość w taki sposób:
KOMPUTER WIRTUALNY NR 1
AUTOR STRONY: JANUSZ KOWALSKI
Bo \n nie działa, duża ilość spacji też niestety nie. Za każdym razem plik zapisuje się w postaci: słowo spacja słowo spacja...
KOMPUTER WIRTUALNY NR 1 AUTOR STRONY: JANUSZ KOWALSKI
Z góry dziękuję za pomoc!
Jeśli chcesz zapisać w pliku kilka informacji, jedna pod drugą, musisz każdą dodać oddzielnie, np:
echo $1 > index.html
echo $2 >> index.html
echo $3 >> index.html
exit 0
opcja "-e" dla polecenia echo włącza interpretację znaków "formatujących" podawanych po backslashu. Tak więc polecenie:
echo -e "ala\nola\niza"
utworzy trzy linie z tymi imionami.
warto wydać polecenie:
man echo
i na pierwszej stronie jest już wyjaśnione, że domyślnie aktywna jest opcja "-E", która wyłącza interpretację znaków formatujących.
Bardzo dziękuję! :) tego właśnie szukałam. Pozdrawiam!