本文摘自:码农增刊 Linus与Linux

在阅读以下部分前, 强烈建议读者打开一个 shell 实验,这些都不是 shell 教科书里的大路货哦:)

1. sudo !!

以root的身份执行上一条命令 。

场景举例:比如Ubuntu里用apt-get安装软件包的时候是需要root身份的,我们经常会忘记在apt-get前加sudo。 每次不得不加上sudo再重新键入这行命令, 这时可以很方便的用sudo !!完事。

2. cd –

回到上一次的目录 。

场景举例: 当前目录为/home/a, 用cd ../b切换到/home/b。 这时可以通过反复执行cd –命令在/home/a和/home/b之间来回方便的切换。

3. ^old^new

替换前一条命令里的部分字符串。

场 景: echo "wanderful", 其实是想输 出echo "wonderful"。 只需要^a^o就行了,对很长的命令的错误拼写有很大的帮助。

4. man ascii

显示ascii码表。

场景: 忘记ascii码表的时候还需要google么?尤其在天朝网络如此“ 顺畅”的情况下, 就更麻烦在GWF多应用一次规则了, 直接用本地的man ascii吧。

5. ctrl-x e

快速启动你的默认编辑器(由变量$EDITOR设置)。

6. netstat –tlnp

列出本机进程监听的端口号。

7. tail -f /path/to/file.log | sed '/^Finished: SUCCESS$/ q'

当file.log里出现Finished: SUCCESS时候就退出tail, 这个命令用于实时监控并过滤log是否出现了某条记录。

8. ssh user@server bash < /path/to/local/script.sh

在远程机器上运行一段脚本。 这条命令最大的好处就是不用把脚本拷到远程机器上。

9. screen -d -m -S some_name ping my_router

后台运行一段不终止的程序, 并可以随时查看它的状态。-d -m参数启动 “ 分离” 模式, -S指定了一个session的标识。 可以通过-R命令来重新“ 挂载”一个标识的session。 更多细节请参考screen用法 man screen。

10. wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com

下载整个www.example.com网站。

11. curl ifconfig.me

当你的机器在内网的时候, 可以通过这个命令查看外网的IP。

12. lsof –i

实时查看本机网络服务的活动状态。

13. python -m SimpleHTTPServer

一句话实现一个HTTP server, 把当前目录设为HTTP服务目录, 可以通过http://localhost:8000访问 这也许是这个星球上最简单的HTTP服务器的实现了。

最后来个复杂的,这行脚本能输出你最常用的十条命令, 由此甚至可以洞察你是一个什么类型的程序员。

history | awk '{CMD[$2]++;count++;} END { for (a in CMD )print
CMD[a] " " CMD[a]/count*100 "% " a }' | grep -v "./" | column -c3 -s
" " -t | sort -nr | nl | head -n10

看不懂行代码? 没关系, 系统的学习一下 *nix shell 脚本吧,力荐《Linux命令行与Shell脚本编程大全》 。

最后还是那句 Shell 的至理名言:“ Where there is a shell, there is a way!”

PS:欢迎追加

你不知道的shell用法和脚本,简单强大相关推荐

  1. xshell脚本简单代码_十分钟学会写shell脚本

    大家好!我是handsomecui,下面我为大家讲解一下shell脚本的写法,讲的不好的地方,欢迎大家留言拍砖. 1.在linux下会写shell脚本是非常重要的,下面我参照例子给大家展示几个脚本,顺 ...

  2. java使用lua脚本操作 redis_在Redis中使用简单强大的Lua脚本

    Redis分布式锁加锁 前段时间写Redis分布式锁,想着在小灰文章的基础上再总结一下,这样能有更深的印象,顺便把Lua脚本分享一下,如果项目中使用Redis比较多,那么Lua脚本一定是会用到的,因为 ...

  3. 生产力工具:shell 与 Bash 脚本

    生产力工具:shell 与 Bash 脚本 作者:吴甜甜 个人博客网站: wutiantian.github.io 微信公众号: 吴甜甜的博客 注意:本文只是我个人总结的学习笔记,不适合0基础人士观看 ...

  4. [MIT公开课(计算机教育中缺失的一课)]2.Shell工具与脚本

    (该系列文章大部分内容来源于MIT课程笔记,加入了个人的理解.原笔记中没有的细节和其他的需要理解的内容,公开课地址:https://www.bilibili.com/video/BV14E411J7n ...

  5. Linux安装Flash脚本,Linux(CentOS)下的Shockwave Flash shell一键更新脚本

    原创内容,转载请注明出处: https://www.myzhenai.com.cn/post/2318.html https://www.myzhenai.com/thread-17933-1-1.h ...

  6. Shell语言-16-Shell脚本调试 -n -v -x -c

    Shell脚本的语法调试,使用bash的相关参数进行调试 sh [参数] 文件名.sh -n 不要执行script,仅查询语法 -v 在执行script之前,先将script的内容输出到屏幕上 -x ...

  7. shell简介和脚本执行方式

    shell简介和脚本执行方式 1.shell简介 Shell是命令解释器(command interpreter),是Unix操作系统的用户接口,程序从用户接口得到输入信息,shell将用户程序及其输 ...

  8. Java - 调用 Shell 命令和脚本

    介绍 有时候我们在Linux中运行Java程序时,需要调用一些Shell命令和脚本.而Runtime.getRuntime().exec()方法给我们提供了这个功能,而且Runtime.getRunt ...

  9. Shell编程(脚本)的常用命令和语句

    一些常用的Shell编程(脚本)命令和语句,可以满足一般需求. 接收到的命令参数: 参数个数: $# 参数值: 命令本身:$0 第一个参数:$1 第二个参数:$2 -- 退出命令: exit echo ...

最新文章

  1. java 实现接口后重写方法报错
  2. Python:用字典建立一个通讯录,向字典中添加和删除通讯人信息,查询某个人的信息,然后输出通讯录中所有人的信息。
  3. CentOS6.5下用yum安装 git .
  4. docker下用keepalived+Haproxy实现高可用负载均衡集群
  5. ASP.NET MVC 多语言开发简单案例
  6. CAN总线技术 | 数据链路层04 - CAN节点状态与错误处理机制
  7. Netty的EventLoop
  8. Win10下windows mobile device center设备中心连接不上无法启动
  9. thinkpad sl400 换网卡,debian换驱动
  10. 《思考的艺术》-大前研一
  11. html 设计尺寸,多少像素才合适 网页设计标准尺寸大讲解
  12. 泰坦尼克号沉船生还预测
  13. Lingo 简单的背包问题
  14. 苹果cms漫画小说模板
  15. markdown-Emoji
  16. debug tools
  17. MSVC中常见的几种函数调用约定
  18. 如何成为一名很酷的机器人工程师?
  19. 聚焦SSD:各固态硬盘厂商主控芯片选择
  20. 漫画 | 计算机原来这么有趣(附赠书)

热门文章

  1. 使用python获取路径问题
  2. Xcode制作动态及静态Framework
  3. Cocos2D粒子发射器的纹理
  4. RHEL5.3下搭建SSH
  5. mysql group by 区间_SQL按区间进行group by
  6. 动态添加的路由 直接访问_VUE 动态路由(二)
  7. 初学者选黑卡还是微单_入门单反和微单相机该买哪个
  8. centos 7 安装 mantisbt-2.12.0 —— 安装LAMP环境、安装mantisbt-2.12.0
  9. 第五篇:JMeter 定时器
  10. Search Insert Position @leetcode