GNU Stow: 오류: 패키지 이름에는 슬래시가 허용되지 않습니다.

GNU Stow: 오류: 패키지 이름에는 슬래시가 허용되지 않습니다.

다음을 사용할 때 오류가 발생합니다. 오류: 패키지 이름에는 슬래시가 허용되지 않습니다.stow --simulate -v --target=/path/to/target/tree /path/to/source/tree

내가 뭘 잘못했나요? ?

답변1

Stow는 /path/to/source/tree. 상위 디렉터리(또는 --target기본값이 마음에 들지 않으면 지정한 디렉터리)로 이동합니다.

즉, 내 디렉터리에 다음이 /usr/local/stow포함되어 있는 경우:

packagea/
  bin/
    packagea
packageb/
  bin/
    packageb
  share/
    man/
      man1/
        packageb.1

그런 다음 들어가서 cd실행 /usr/local/stow하거나 stow packagea필요한 심볼릭 링크가 생성됩니다.stow packagebstow

  • 의 경우 stow packagea다음 /usr/local/bin/packagea을 가리킬 것입니다./usr/local/stow/package/bin/pacakge
  • 을 위한 stow packageb:
    • /usr/local/bin/packageb링크됩니다/usr/local/stow/packageb/bin/packageb
    • /usr/local/share/man/man1/packageb.1링크됩니다/usr/local/stow/packageb/share/man/man1/packageb.1

이와 같이:

# cd /usr/local/stow
# tree
.
└── packageb
    ├── bin
    │   └── packageb
    └── share
        └── man
            └── man1
                └── packageb.1
# stow --simulate -v packageb
LINK: bin/packageb => ../stow/packageb/bin/packageb
LINK: share/man/man1/packageb.1 => ../../../stow/packageb/share/man/man1/packageb.1
WARNING: in simulation mode so not modifying filesystem.

관리를 위해 stow를 사용 하려면 /usr/share/powerline/config_files/themes/tmux/default.json다음을 수행할 수 있습니다. 여기 /root/stow내 준비 디렉토리가 있습니다(어디든지 있을 수 있음). 이를 /usr/share대상 디렉토리로 사용합니다.

  1. 시작하기 전에 다음이 필요합니다.

    # tree /usr/share/powrline
    /usr/share/powrline/
    └── config_files
        └── themes
            ├── file1.txt
            ├── file2.txt
            ├── file3.txt
            ├── file4.txt
            └── file5.txt
    
  2. 내 저장소 디렉터리에서:

    mkdir -p powrline/powrline/config_files/themes/tmux
    echo '{"this": "is a test"}' > powrline/powrline/config_files/themes/tmux/default.json
    

    이것은 나에게 다음을 제공합니다:

    # tree
    .
    └── powrline
        └── powrline
            └── config_files
                └── themes
                    └── default.json
    
    
  3. 그런 다음 내 stow 디렉터리에도 다음을 추가합니다.

    stow --target=/usr/share powrline
    
  4. 이것은 나에게 다음을 제공합니다:

    # tree /usr/share/powrline/
    /usr/share/powrline/
    └── config_files
        └── themes
            ├── default.json -> ../../../../../root/stow/powrline/powrline/config_files/themes/default.json
            ├── file1.txt
            ├── file2.txt
            ├── file3.txt
            ├── file4.txt
            └── file5.txt
    

물론 /usr/share대상 이외의 다른 것을 사용하기 위해 디코딩할 수도 있습니다. 예를 들어 /usr/share/powrline대상 디렉터리로 사용할 수 있습니다. 이 경우 stow 디렉터리는 다음과 같습니다.

.
└── powrline
    └── config_files
        └── themes
            └── default.json

관련 정보