Если вы правильно добавили путь, вам просто нужно назвать имя скрипта, поэтому xyz.sh
вместо использования./xyz.sh
Используя ./
, вы говорите своей оболочке искать в текущем рабочем каталоге и запускать оттуда xyz.sh.
--
Примечание: вам не хватает символа / в начале пути к каталогу, он должен быть PATH=$PATH:/home/somefolder/test
, и вы должны добавить только каталог, а не полное имя исполняемого файла.
Похоже, что команда find
, которая доступна в Solaris, должна работать.
Предполагая, что вы находитесь в каталоге, который вы хотите «каталогизировать», выполните команду
user@host$ find. > directory_list.txt
будет рекурсивно перечислять все файлы и каталоги ниже текущего каталога и записывать вывод в файл directory_list.txt
.
Команда find
также позволяет выполнять поиск по шаблону имени файла и выполнять команду, такую как rm
, для найденных совпадений, которая выполняет автоматическое удаление нужных файлов резервных копий, если их имя файла придерживается предсказуемого шаблона. Это помогло бы избежать разбора вывода ls
илиfind
в любом скрипте, который вы можете написать для автоматизации процесса, что в большинстве случаев не является хорошей идеей. Примеры такого использования можно найти на этом сайте (, например. здесь ), но обратите внимание, что вам, возможно, придется использовать -exec rm -f '{}' \;
вместо -delete
в зависимости от вашей версии поиска.