По некоторым причинам, когда я выполняю этот сценарий, я создал файл .gitkeep
не показывает в выводе дерева, и также мое объявление UTF8 для набора символов является неправильным.
Вот мой текущий код сценария:
#!/bin/bash
echo "Type in directory path to tree"
read directoryPath
tree -a -l -f -L 5 -P --charset UTF8 -h --device --dirsfirst -C $directoryPath
Вот моя команда и вывод
root@selector:/var/www/selector-skeleton-application# ./scripts/tree-directory.sh
Type in directory path to tree
/var/www/selector-skeleton-application/lib/pluto/src
/var/www/selector-skeleton-application/lib/pluto/src
0 directories, 0 files
Однако вот общий вывод команды списка каталогов
root@selector:/var/www/selector-skeleton-application# cd lib/pluto/src/
root@selector:/var/www/selector-skeleton-application/lib/pluto/src# ll
total 8
drwxr-xr-x 2 root root 4096 Feb 6 01:06 ./
drwxr-xr-x 4 root root 4096 Feb 6 01:01 ../
-rw-r--r-- 1 root root 0 Feb 6 01:06 .gitkeep
root@selector:/var/www/selector-skeleton-application/lib/pluto/src#
И наконец, это также отображается в выводе со сценарием, который я создал:
UTF8 [error opening dir]
Эта конкретная комбинация опций: -P --charset UTF8
не имеет смысла. -P
используется для установки шаблона для каталогов это tree
должен распечатать:
-P pattern
List only those files that match the wild-card pattern.
Вы установили шаблон на --charset
, который .gitkeep
не соответствует, конечно. Это уезжает UTF8
как аргумент неопции, который tree
интерпретирует как имя каталога, следовательно ошибка, которую Вы получаете.