Bash写脚本
1.找个地方新建文件,后缀随意,一般来说脚本的后缀是 .sh,但是我偏要把后缀写成 .txt。我喜欢把脚本放在 ~/local 目录里
mkdir ~/local
cd ~/local
touch demo.txt
2.编辑 demo.txt,内容如下:
pwd # 确认一下当前路径是不是 ~/local 或者 /c/Users/你的名字/local
3.在任意位置执行 sh ~/local/demo.txt 即可运行此脚本
cd ~/Desktop
sh ~/local/demo.txt
你会看到 ~/Desktop 目录里多出一个 demo 目录,demo 目录里面还有一些文件
这个 demo.txt 就是你写出的第一个 Bash 脚本了
4.将 ~/local 添加到 PATH 里
cd ~/local; pwd 得到一个路径
设置 PATH
创建 ~/.bashrc:touch ~/.bashrc
编辑 ~/.bashrc:start ~/.bashrc
在编辑器里添加一行字: export PATH="local的绝对路径:$PATH"
注意 local的绝对路径 就是在上面得到的路径,粘贴过来
运行 source ~/.bashrc 使配置生效
之前你要运行 sh ~/local/demo.txt,现在你只需要运行 demo.txt
如果你觉得 demo.txt 的后缀 .txt 没什么用,可以用下面的命令删掉它
mv ~/local/demo.txt ~/local/demo
将 demo.txt 重命名为 demo
现在你只要运行 demo 就能执行该脚本了。
参数
demo 脚本只能创建名字为 demo 的目录,太无聊了,我们让目录名是可变的吧。
假设你的脚本路径为 ~/local/demo
~/local/demo 的内容应该改为
这样一来,~/local/demo 就可以接受参数了,而不是之前的只能创建固定名称的目录:
~/local/demo aaa 会创建 aaa 目录
Node.js写脚本
用 JS 切换目录
console.log(process.cwd()) // 打印当前目录
// process.chdir('~/Desktop'); // 这句话不行的,因为 JS 不认识 ~ 目录
process.chdir("/Users/frank/Desktop")
console.log(process.cwd()) // 打印当前目录
console.log 就相当于 echo
用 JS 脚本创建目录
let fs = require("fs")
fs.mkdirSync("demo")
用 JS 脚本创建文件
let fs = require('fs')
fs.writeFileSync("./index.html", "")
用 JS 脚本来重写 demo.sh
创建 ~/local/jsdemo.js
node ~/local/jsdemo.js zzz,就可以看到 zzz 目录创建成功了