도트 파일과 도트가 없는 동일한 이름의 인접한 파일을 갖는 것은 나쁜 습관입니까?
배경: 우리는 다양한 구성 파일, 로그 파일 등을 저장하는 $HOME/.ourapp 디렉토리를 만들었습니다. 그러나 사용자가 추가, 생성 및 수정한 파일을 애플리케이션 외부에서 또는 다양한 도구를 사용하여 어디에 저장할 것인지 논의 중입니다. 응용 프로그램 외부에서 그 안에. $HOME/ourapp에 넣는 것이 가장 자연스러워 보이지만 이는 나쁜 습관이거나 혼란스러울 수 있습니다.
답변1
도트 파일과 도트가 없는 동일한 이름의 인접한 파일을 갖는 것은 나쁜 습관입니까?
아니요. 도트 파일의 "의미"는 사용자 구성을 저장하므로 "사용자에게 표시되는" 도트가 아닌 디렉터리와 잘 작동한다는 것입니다(이것은 매우 전통적이고 일관성이 없습니다).
다양한 구성 파일, 로그 파일 등을 저장하기 위해 $HOME/.ourapp 디렉토리를 만들었습니다.
이에 반대하는 것이 좋습니다. 이는 좋은 습관이 아닙니다. 구성, 임시 파일, 지속되어야 하는 상태에 대한 폴더 $XDG_CONFIG_HOME/ourapp
(일반적으로 또는 설정되지 않은 경우 $XDG_CONFIG_HOME
yes ) 를 갖는 것입니다 (설정되지 않은 경우 yes ). 재부팅하지만 로그와 같이 필수는 아닙니다.$HOME/.config
$XDG_RUNTIME_DIR/ourapp
$XDG_STATE_HOME/ourapp/logs
$XDG_STATE_HOME
$HOME/.local/state
바라보다https://specations.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables
이런 식으로 당신은
- 사용자의 홈 디렉토리를 복잡하게 만들지 마십시오.
- 사용자가 백업을 실행할 때 XDG 구성 디렉터리만 백업하면 되며 모든 애플리케이션이 즉시 백업됩니다.
그러나 우리는 다양한 도구를 사용하여 애플리케이션 외부에서든 애플리케이션 내부에서든 사용자가 추가, 생성 및 수정하는 파일을 어디에 저장할 것인지에 대해 이야기하고 있습니다.
중요한 토론!
실행 파일 xdg-user-dir DOCUMENTS
(또는 VIDEOS
, 또는 에 문서화된 다른 옵션 중 하나 man xdg-user-dir
) 에 대해 물어보고 $(xdg-user-dir DOCUMENTS)/ourapp
사용자가 수정한 데이터 등을 사용하는 것이 좋습니다. 이렇게 하면 사용자가 직관적으로 찾을 수 있는 위치에 파일이 배치됩니다.
영어 사용자에게는 이러한 파일을 모두 에 넣는 것이 논리적으로 보일 수 있지만 $HOME/Documents
영어가 아닌 사용자 계정에서는 이러한 디렉토리가 종종 다르게 호출됩니다( $HOME/Dokumente
예: 독일어 gnome의 경우). 소프트웨어를 현지화할 수 없다는 것이 얼마나 짜증나는 일인지 여러분도 저처럼 알고 계시리라 생각합니다.