쉘 스크립트의 tree 명령이 디렉토리에 슬래시를 추가하지 않습니다.

쉘 스크립트의 tree 명령이 디렉토리에 슬래시를 추가하지 않습니다.

tree명령을 실행하는 쉘 스크립트가 있습니다

$ cat _tree.sh 
#!/bin/sh
tree -L 2 --charset ascii -I "_tree.sh|LICENSE|README.md|node_modules|nbproject"
$ sh _tree.sh 
.
|-- bower.json
|-- dpl
|-- dst
|-- gulpfile.js
|-- package.json
`-- src
    |-- fonts
    |-- images
    |-- scripts
    `-- styles

7 directories, 3 files
$

명령을 직접 실행하면,

$ tree -L 2 --charset ascii -I "_tree.sh|LICENSE|README.md|node_modules|nbproject"
.
|-- bower.json
|-- dpl/
|-- dst/
|-- gulpfile.js
|-- package.json
`-- src/
    |-- fonts/
    |-- images/
    |-- scripts/
    `-- styles/

7 directories, 3 files
$

/슬래시( )를 추가합니다. _tree.sh파일이 이 작업을 수행하도록 하려면 어떻게 해야 합니까 ?

답변1

디렉터리에 후행 슬래시를 추가하려면 다음 -F옵션을 포함하도록 코드를 수정하면 됩니다 _tree.sh.

tree -F -L 2 --charset ascii -I "_tree.sh|LICENSE|README.md|node_modules|nbproject"

설명하다

기본적으로 프로그램 tree(예: 버전 1.7.0)은 뒤에 슬래시를 추가하지 않습니다. @steeldriver가 지적했듯이 이는 -F별칭 내에서 ~/.bashrc또는 ~/.bash_aliases별칭으로 정의된 등 시스템 어딘가에서 옵션이 활성화되어 있기 때문에 tree터미널에서 실행할 때 후행 슬래시가 표시되기 때문일 수 있습니다. 스크립트에 후행 슬래시도 포함하려면 -F명령에 옵션을 추가하기 만 하면 됩니다 tree.

관련 정보