Shell 是一个用 C 语言编写的程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
业界所说的 Shell 通常都是指 Shell 脚本,但要知道,Shell 和 Shell Script 是两个不同的概念。
Shell 脚本种类众多,常见的有:
除了上面的几种,Node.js 本质上也是一种 Shell 脚本,只不过他的语法是 JavaScript。不同 Shell 脚本的区别就是语法不一样。
总结:我们通过编写 Shell 脚本,然后放在 Shell 应用程序里面运行,常见的 Shell 应用程序有 Cmd、git Bash 等等。常见的Shell 脚本有 Bash、Node。
不同的 Shell 脚本需要不同的 Shell 应用程序来执行,默认 Shell 应用程序都是执行 Bash 脚本的,如果需要切换 Node 脚本的执行环境,我们需要安装 Node,配置完成环境变量后,输入node
即可切换 Node 脚本的执行环境中。
Bash 是大多数 Linux 系统默认的 Shell 脚本。
Bash Documents(暂时没找到更好的资源学习)
mkdir demo
cd demo
mkdir css js
touch index.html css/style.css js/main.js
exit
你每次在 Shell 应用程序 里面输入一个命令时(比如 ls、cp、demo),Bash 都会去 PATH 列表里面寻找对应的文件,如果找到了就执行。
当我们自己写的脚本不在 PATH 列表里面应该怎么执行呢?比如我们写了一个名为 demo 的脚本。
第一种
cd demo 脚本的目录
./demo
第二种
脚本目录/demo
注意:如果我们直接在 Bash 里面输入 demo 的话,会发现执行不了,因为 demo 这个脚本不在 PATH 列表里。
查看脚本所在的 PATH
使用 type ls
可以看到寻找过程(在 Win 系统下好像没啥用)
使用 which ls
可以看到寻找结果
我们在 Bash 执行环境里输入 Bash 脚本,也可以在 Node 执行环境里输入 Node 脚本。
Bash 脚本能做的事情,JS 脚本也能做。(sh demo.sh 对应 node demo.js)
查看当前目录
process.cwd();
创建目录
var fs = require('fs')
fs.mkdirSync("./demo")
创建文件
var fs = require('fs')
fs.writeFileSync("./demo.txt","123")
作用:毫无作用。
Linux 中的文件是通过敲命令来执行的,可以用vi demo
通过 vi 来打开,也可以通过sh demo
当做脚本来执行,默认是 sh
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。