在不更改当前目录的情况下在目录中创建多个文件

Create multiple files in a directory without change current directory

我在 mac machine 中使用下面的命令:

mkdir views && touch views/layout.erb views/home.erb views/about.erb views/contact.erb

一切正常。但我正在寻找一些东西,这样我就不必使用目录名称(视图)来 create/touch 每个文件。

您可以使用 bash 扩展来使其更简洁:

mkdir views && touch views/{layout,home,contact}.erb
mkdir views && pushd views && touch layout.erb home.erb about.erb contact.erb && popd

或者:

mkdir views && (cd views && touch layout.erb home.erb about.erb contact.erb)

您可以这样做:

mkdir views && touch views/{layout,home,about,contact}.erb

或者您可以更改子shell中的目录,因此您当前shell的工作目录不变:

mkdir views && (cd views && touch layout.erb home.erb about.erb contact.erb)

另一种选择是使用循环:

mkdir views && for f in layout home about contact ; do touch views/${f}.erb ; done