一些常用终端命令.
通用
指令 | 作用 |
---|---|
cd path // cd .. // cd / // cd ~ | 进入 指定 // 上层 // 根 // home 目录 |
Ctrl + L | 清屏 |
exit | 退出 |
ping | 测试网络通断状态 |
Ctrl + C | 停止当前任务 |
exit | 停止任务或终端 |
mkdir | 新建文件夹 |
cp(xcopy)/mv/rm | 文件(夹)复制、移动与删除 |
curl + URL | 访问 URL(可加参数,具体百度) |
pwd | 显示当前全路径 |
dir/ls | 列出当前目录(样式不同) |
cat | (按参数格式)输出文件所有内容 |
clear | 清屏 |
echo | 回显,常用作文本输出 |
shutdown -h now / reboot | 关机 / 重启 |
ls | grep abc | 过滤 ls 的输出,只显示含"abc"的内容 |
ls | tee [-a] t.log | 显示 ls 输出同时[追加]输出到 t.log 里 |
mktemp | 临时创建一个 temp 文件 |
文件末尾追加命令
指令 | 作用 |
---|---|
echo 'add content'>/home/data/test.sh | 覆盖原文件内容 |
echo 'add content'>>/home/data/test.sh | 在末尾追加 |
date +"%Y-%m-%d %H:%M:%S.%N" >> keepchange.txt | 这种写法也可以,就是把前面当成字符串输入文件 |
输出重定向
指令 | 作用 |
---|---|
ls > ls.txt | 把 ls 输出内容输出到 ls.txt |
>/dev/null | 把标准输出重定向到黑洞,相当于(1>/dev/null) 标准输入 0,标准输出 1,标准错误 2 |
>/dev/null 2>&1 | 把标准错误重定向到标准输出,也就是这俩都进了黑洞 |
2>&1 >/dev/null | 把标准错误重定向到标准输出(屏幕),标准输出进黑洞 |
启动程序
同步(Synchronous)和异步(Asynchronous) 同步,就是调用某个东西时,调用方得等待这个调用返回结果才能继续往后执行。异步,和同步相反 调用方不会理解得到结果,而是在调用发出后调用者可用继续执行后续操作,被调用者通过状体来通知调用者,或者通过回掉函数来处理这个调用
- start 异步
- call 同步
清垃圾(?
写脚本时,如果遇到两种情况:
要删除某路径下所有东西
路径是变量
那就有可能就变成删库跑路了…
比如
1
2set PATH=%1
rm -rf %PATH%/*PATH 靠调用脚本时传入的参数来定义,没传参数的话就 undefined,以至于下一行变成大名鼎鼎的
rm -rf /*
与或-管道运算符
command1 & command2 & command3: 不论成败都会执行
command1 && command2 && command3: 左边全都执行成功/返回 0 才会执行右边的命令
command1 || command2 || command2: 左边全都执行失败/返回 1 才会执行右边的命令
command1 | command2: 把左边的命令的输出结果作为右边的命令的输入,例如 ps | grep win
CMD/PowerShell
bat 与 shell 互转 Appendix L. Converting DOS Batch Files to Shell Scripts
指令 | 作用 |
---|---|
md | 创建目录,同 mkdir |
rd | 删除目录,同 rm |
del | 删除文件 |
cls | 清屏,同 clear |
ipconfig | 查看网络配置 |
start + exe | 打开应用程序 |
start/explore + URL/HTML文件 | 用默认浏览器打开 |
microsoft-edge:URL | 用 edge 打开 URL |
xxx /? | xxx 的帮助 |
- 注意 cmd 不支持
/
作为路径,PowerShell 支持
Linux
指令 | 作用 |
---|---|
su root | 获取最高权限(需要输入 root 密码) |
ifconfig | 查看网络配置 |
dhclient | DHCP 重新配置 IP |
./xxx.sh start/restart/xxx | 启动/重启 shell 脚本 |
nohup xxx.sh & | 不挂起执行 xxx (退出终端不影响程序运行),需要 ps/kill 杀死进程 |
tail -n 20 README.md | 输出 READMD 最后 20 行内容(默认是 10 行) |
systemctl start/enable/status xxx.service | xxx 服务-开启/开机启动/状态 |
touch a.txt | 创建 a.txt 文件 |
Linux nohup 命令
Linux tail 命令
基于 VSCode 和 CMake 进行 C/C++开发「第一讲」linux 系统介绍
查杀进程
指令 | 作用 |
---|---|
ps -ef/aux | 显示进程(注意多个进程用’,'隔开而非空格) |
kill -9 pid | 杀死进程 |
lsof -i:8080 / -i@12:34:56:78 | Linux 中一切皆文件,此命令可以显示指定文件信息 |
宝塔
指令 | 作用 |
---|---|
/etc/init.d/bt default | 查看宝塔面板入口 |
Git
指令 | 作用 |
---|---|
git remote add origin 你的远程库地址 | 添加远程 |
- Git 三连
指令 作用 git add .
加入暂存区 git commit -m "提交消息,可添加emoji😝"
提交 git push [origin(远程名字,默认是origin) master(分支名字)]
推送
Docker
指令 | 作用 |
---|---|
docker ps [-a] | 列出[所有]容器 |
docker ps --filter "abcd / status=running | 筛选出含"abcd"/状态为 running 的容器 |
docker kill xxx | 关闭 xxx 容器 |
docker list| grep abc | 筛选 docker list 命令中含有 abc 字符串的结果集 |
Vim
指令 | 作用 |
---|---|
:q! | 如何获得一个随机字符串? >让新手退出 vim |
扩展程序
fzf
与 grep 相似,不同点:
grep 是查找写死的东西,查找范围固定
fzf 可动态查找用户输入的内容,并且范围大
指令 | 作用 |
---|---|
fzf | 模糊查找 |
ls | fzf | 在 ls 的输出内容中查找 |
tldr
命令帮助文档,优化版的 man,有个类似的工具 cheat.sh
,一番角逐之下我还是用的 tldr
指令 |
---|
tldr cd |
tldr java |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ⭐️齐下无贰⭐️!
评论