对于 Web 开发实践,我在 Ubuntu 17.10 上使用 LAMP 堆栈。为此,我在 中创建目录/var/www
,每个目录都以一个项目命名。
要创建子目录,我使用终端并:
david@Ed:/var/www/html$ mkdir projectName
david@Ed:/var/www/html$ cd projectName
david@Ed:/var/www/html/projectName$ mkdir css img js
david@Ed:/var/www/html/projectName$ touch index.html
david@Ed:/var/www/html/projectName$ ls
css img index.html js
这行得通。而且,老实说,远非艰巨。但是,有没有一种方法可以简化这一点?
我知道:
mkdir -p projectName/css
将同时创建css
和 parentprojectName
目录(如果该父目录尚不存在),但仍然需要创建其他两个目录和index.html
文件(同样,这并不是特别困难,但感觉应该是不必要)。
理想情况下,我希望该命令mkdir <projectName>
在/var/www
目录中运行时会创建<projectName>
带有css
, img
,js
目录和index.html
文档的目录(该文档理想情况下包含有效 html 文档的骨架*)。但是我接受滥用mkdir
命令可能会导致不可预见/可预测的边缘情况和后果,因此最好的折衷方案可能是某种脚本。
考虑到上述情况,我创建了以下(天真/简单)脚本:
#!/bin/bash
mkdir $@
cd $@
mkdir css img js
touch index.html
我将上面的脚本调用如下:
./createDir.sh projectName
这可行,但不太理想;问题:
- created
index.html
的类型是plain text document (text/plain)
,而不是预期HTML document (text/html)
的,当然 - 没有 HTML 文档的结构(如单个脚注中所述),因为我没有添加任何内容(并且还没有找到在脚本中创建所述内容的方法)。
此外,可以预见的是,理想情况下css
,the和js
目录也将在创建时文档 (和) 完好无损。project.css
project.js
那么,有没有一种方法可以让我(使用脚本或其他方式)创建一个包含子目录和文档的目录?
* . 作为一个基本的例子:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="js/project.js"></script>
<link href="css/project.css" rel="stylesheet" />
</head>
<body></body>
</html>