Não listando o arquivo .gitkeep no comando de listagem de árvores e também o charset não reconhecido

1

Por algum motivo, quando executo este script, criei o arquivo .gitkeep não aparece na saída da árvore e também minha declaração de UTF8 para charset está incorreta.

Aqui está o meu código de script atual:

#!/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

Aqui está o meu comando e saída

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

No entanto, aqui está uma saída de comando de listagem de diretório geral

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#

E por último, isso também está sendo exibido na saída com o script que eu criei:

UTF8 [error opening dir]
    
por jkushner 06.02.2018 / 02:25

1 resposta

2

Essa combinação específica de opções: -P --charset UTF8 não faz sentido. -P é usado para definir um padrão para diretórios que tree print:

-P pattern
      List  only  those files that match the wild-card pattern. 

Você definiu o padrão como --charset , o qual .gitkeep não corresponde, é claro. Isso deixa UTF8 como um argumento não-opcional, que tree interpreta como um nome de diretório, daí o erro que você tem.

    
por muru 06.02.2018 / 02:32