이제 나는 이것을 사용합니다 :
mkdir -p a/b/c/d/e;
touch a/b/c/d/e/file.abc;
더 효율적인 방법이 있나요?
답변1
install -D src_file /tmp/a/b/c/d/e/f/g/h/i/dst_file
install -Dt /tmp/a/b/c/d/e/f/g/h/i your_file
빈 파일만 터치하려는 경우:
install -D /dev/null /tmp/a/b/c/d/e/f/g/h/i/empty_file
저것 좀 봐(이거설치(1)맨페이지에는 권한 설정, 타임스탬프 유지 등의 옵션이 있습니다.
답변2
사용된 도구 측면에서: 없음.
touch
존재하지 않는 디렉터리에서 작업을 시도하는 경우 mkdir
다음 한 가지만 수행하면 (올바르게) 실패합니다.목차, 특이한문서. 두 가지 다른 작업에는 두 가지 도구가 필요합니다.
즉, 스크립트의 줄 수나 스크립트의 가독성 측면에서 효율성에 대해 이야기하는 경우 이를 함수에 넣을 수 있습니다.
seedfile() {
mkdir -p -- "$(dirname -- "$1")" &&
touch -- "$1"
}
seedfile /path/to/location/one/file.txt
seedfile /path/to/somewhere/else/file.txt
seedfile local/paths/work/too/file.txt
답변3
이 시도:
mkdir -p a/b/c/d/e && touch "$_"/file.abc
항상 나에게 효과적입니다.