Linux에서 파일 이름을 지정하는 편리한 방법

Linux에서 파일 이름을 지정하는 편리한 방법

Linux(예: 튜토리얼 및 가이드)를 다루는 많은 사람들이 파일 이름을 지정할 때 공백을 생략하고 문자 "_"로 바꾸는 경향이 있다는 것을 알았는데, 이에 대한 이유가 있는지 궁금합니다. 또한 파일 이름을 지정할 때 피해야 할 다른 문자가 무엇인지 알고 싶습니다. 대문자는 어떻습니까? 나는 소문자를 선호하는 것을 발견했습니다.

마지막 질문은 Linux에서 내 노래의 이름을 지정하는 가장 좋은 방법은 무엇입니까?입니다. 예를 들어, 다음과 같은 형식의 파일을 많이 받습니다. track. artist name - song name.mp3예 : " 이 문제에 대한 귀하의 의견을 알고 싶습니다." 01. Crystal Castles - Untrust Us.mp3로 형식을 변경해야 합니까?track._artist_name_-_song_name.mp301._Crystal_Castles_-_Untrust_Us.mp3

답변1

기술적으로 명시적으로 금지되는 유일한 문자는 특별한 의미를 갖고 있는 /\0( 바이트)입니다.NUL

그러나 사람들이 편의를 위해 사용하는 경향이 있는 몇 가지 규칙이 있습니다. 예를 들어, 사람들은 공백을 사용하는 것을 좋아하지 않고 을 사용하는 것을 발견했습니다 _. 이는 공백이 *nix 명령줄의 단어 구분 기호이기 때문입니다. 따라서 파일 이름에 공백을 사용하는 경우 \이름을 단일 엔터티로 올바르게 식별하려면 파일 이름을 인용하거나 각 공백을 이스케이프 처리해야 합니다( 사용). 비록 당신은할 수 있는파일 이름에 공백을 사용하면 추가 노력으로 인해 많은 사람들이 이를 수행할 수 없게 됩니다.

또한 (일부 사람들은) 대문자 사용을 피합니다. 아마도 이러한 파일 이름을 입력하는 데 더 많은 노력이 필요하기 때문일 것입니다. 결국 Shift누르기가 매우 어렵습니다!

귀하의 질문은 "무엇입니까?최고협약? ”는 많은 질문과 마찬가지로 *nix에서는 대답하기 어렵습니다.최고에 가장 적합한 솔루션.

~/Music/<Artist>/<Album>/개인적으로 저는 각 트랙 이름이 다음과 같은 파일 계층 구조( )에 오디오 파일을 저장합니다 ## - <Track Name>.ext.

답변2

  • 사례

    파일 이름은 대문자, 소문자, 대소문자 혼합이 적합합니다. 일부 사용자가 소문자 이름을 선호하는 이유는 단순히 소문자로 입력하는 것이 더 빠르기 때문입니다.

  • 공간

    파일 이름에 공백을 포함할 수 있지만 한 가지 주의 사항이 있습니다. 이러한 파일 이름은 쉘 스크립트를 작성할 때 더 많은 주의가 필요합니다. 이 주제에 대한 기본 튜토리얼은 다음과 같습니다.여기.

  • 콜론

    :콜론( )의 사용은 피해야 합니다. 한 컴퓨터에서 다른 컴퓨터로 파일 을 이동할 scp때 . machinename:filename따라서 파일 이름에 콜론이 있으면 혼동을 일으킬 수 있습니다.

  • 삭감

    이 문자는 Microsoft 시스템에서 사용되는 것처럼 /디렉터리 이름을 구분하는 데 사용되므로 사용할 수 없습니다 . \자유롭게 파일을 주고받으려면 두 가지 상황을 모두 피해야 합니다.

  • 이식성

    많은 mp3 플레이어는 이전 Microsoft VFAT 파일 시스템을 사용합니다. 이러한 파일 시스템에서는 , :, \및가 *금지 ?됩니다. 또한 이러한 파일 시스템으로 파일을 전송하는 경우 이러한 문자를 사용하지 않는 것이 가장 좋습니다.

답변3

  • 케이스 - 메모

    *nix(예: 운영 체제)의 공통 파일 시스템은 동일한 폴더에 존재하는 것을 허용 ThisFile하고 존재합니다. thisfile예를 들어, vfat 또는 ntfs 파일 시스템(그리고 상당수의 다른 오래된 파일 시스템)에서는 이것이 불가능합니다.

답변4

가장 중요한 것은 기존 패턴을 일치시키고 고수하는 것입니다. 답을 찾기 위해 신중하게 생각하는 데 시간을 낭비할 필요가 없습니다. 나는 이 질문에 대한 내 대답이 아이러니하다는 것을 이해합니다.

Apple도 이를 따랐 /Library/Extensions/SomeExtension.file으므로 작업 디렉터리도 다음과 같이 설정했습니다.Projects/Client/Project/thing.extension

그건 그렇고, 제가 하는 프런트 엔드 개발 작업도 namingLikeThis.jsJS와 CSS의 논리를 따릅니다 something-like-this.css. 즉, 내 프로젝트의 규칙을 혼합하지만 전체 기술을 따르지는 않습니다. Bootstrap 제작자에게 물었습니다.@지방그리고@mdo얼마 전까지만 해도 그들의 접근 방식은 괜찮았습니다. 나는 그것을 채택했고 다시는 그것에 대해 진지하게 생각하지 않았습니다.

조금 이상하지만 합리적인 답으로 퍼즐을 해결해 주므로 생각이나 논쟁을 덜고 작업에 착수할 수 있습니다.

관련 정보