Mam plik źródłowy, który jest połączeniem wielu plików, które zostały połączone. Mój skrypt ma rozdzielić je na oryginalne pojedyncze pliki.Jak zachować wiodące białe znaki za pomocą echa w skrypcie powłoki?
Ilekroć napotykam linię rozpoczynającą się od "FILENM", oznacza to, że jest to początek następnego pliku.
Wszystkie wiersze szczegółów w plikach mają ustaloną szerokość; obecnie napotykam problem polegający na tym, że linia zaczynająca się od początkowych białych znaków jest obcinana, gdy nie ma być obcięta.
Jak poprawić ten skrypt, aby zachować wiodące spacje?
while read line
do
lineType=`echo $line | cut -c1-6`
if [ "$lineType" == "FILENM" ]; then
fileName=`echo $line | cut -c7-`
else
echo "$line" >> $filePath/$fileName
fi
done <$filePath/sourcefile
Zasługujesz na oskarę. – xdevs23