터치시 빈 파일이 아닌 템플릿에서 생성

touch 명령은 기본적으로 새 파일을 만드는 데 사용됩니다.

그러나 touch 는 빈 파일을 작성하기 때문에 그리 편리하지 않습니다.
예를 들어, license 파일을 프로젝트에 포함시키는 것을 잊었으므로 나중에 추가하고 싶습니다.
그 때 두드리는 것은 touch license 혹은, 기존의 프로젝트로부터 license 를 찾아 cp 를 한다.

여기서 생각하는 것은, license 파일의 내용은 거의 바뀌지 않는다. 대체로 이하와 같은 느낌이다.
The MIT License (MIT)

Copyright (c) akameco <[email protected]> (akameco.github.io)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
(略)

그렇다면, 이것을 템플릿으로 touch 대신에 이것을 새로운 파일로 작성하는 것이 좋을 것 같다.

따라서 touch 대신 touch-alt를 사용합니다.


$ npm i -g touch-alt



akameco/touch-alt: Create from a template instead of a new file

사용법은 touch와 같지만, touch의 본래의 기능인 타임 스탬프 갱신의 기능은 없다.
자신은 거의 사용하지 않기 때문에 alias touch=touch-alt.zshrc에 추가했다.

사용법은 touch와 같다.
그러나 --add 또는 -a 플래그로 새 템플릿을 추가 할 수 있습니다.
추가된 파일은 ~/.touch-alt 아래에 저장된다.
$ touch-alt --add license

후에는 touch 대신 touch-altlicense 를 작성하기만 하면 된다.
$ touch license
$ cat license

$ rm license
$ ls -la ~/.touch-alt
.             ..            license
$ touch-alt license
$ cat license
The MIT License (MIT)

Copyright (c) akameco <[email protected]> (akameco.github.io)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
()

물론 템플릿이없는 파일은 빈 파일을 만듭니다.

요약



자신은 비교적 yeomen으로 템플릿을 작성하는 경우가 많지만, 기존의 프로젝트에 걸쳐서 항상 사용하는 설정을 가져오고 싶을 때에 편리하다고 생각한다.
예를 들면, .babelr c나 .eslinrc , .editorconfig 등이 그것이다.
이것들을 touch -a .eslintrc 로 하는 것으로, touch .eslintrc 를 하는 것만으로 프로젝트에 추가할 수 있다.

akameco/touch-alt: Create from a template instead of a new file

실제로, 벌써 템플릿이 보존하고 있으면 그것을 복사해 오는 만큼의 스크립트이지만, 이 손의 스크립트는 어떻게 해도 test 쪽이 행수가 늘어나는 것이 귀찮은 곳이었다.
$ touch-alt --help

  Create from a template instead of a new file

  Usage
  $ touch-alt <source>
  $ touch-alt --add <source>

  Options
  -a, --add         Create new template file
  -o, --overwrite   Overwrite by template

  Example
  $ touch-alt .editorconfig

좋은 웹페이지 즐겨찾기