Когда я запускаю следующий кодя получаю ошибку синтаксиса: слово неожиданного (ожидающий «)»)
#!/bin/bash
folder="~/Desktop/"
if [ -d "$folder" ];
then
cd $folder;
listofpdf=$(find *.pdf -type f);
fi
echo ${listofpdf};
for words in $listofpdf
do
array+=("$words")
done
я получаю «Ошибка синтаксиса: слово неожиданного (ожидая„)“)». Кажется, что это связано с переменной массива. Оцените исправления. Заранее спасибо
Если вы запускаете скрипт с 'sh scriptname', shebang игнорируется. – chepner
Да, 'dash' используется для интерпретации сценария, поэтому синтаксическая ошибка. Кстати, оболочке не нужны все эти точки с запятой в конце строки, они необходимы только для разделения операторов в одной строке. – jlliagre
Кроме того, 'folder =" ~/Desktop "' не работает в bash, поскольку двойные кавычки предотвращают расширение тильды, а в 'cd $ folder' расширение тильды происходит до расширения переменной, поэтому тильда не расширяется. – choroba