使用*nix系统已经有一段时间了。但还是有一些命令是被我一直忽略的,真希望我能早几年发现这些命令。

1. man ascii

这个命令会打印出八进制、十六进制和十进制的ASCII码表。难以置信我是一个月之前才知道这个命令的。我总是使用google来查询ASCII码表。这个命令其实更方便。

1
2
3
4
5
6
7
8
9
10
11
12
ASCII(7)           BSD Miscellaneous Information Manual           ASCII(7)
NAME
    ascii -- octal, hexadecimal and decimal ASCII character sets
DESCRIPTION
    The octal set:
    000 nul  001 soh  002 stx  003 etx  004 eot  005 enq  006 ack  007 bel
    010 bs   011 ht   012 nl   013 vt   014 np   015 cr   016 so   017 si
    020 dle  021 dc1  022 dc2  023 dc3  024 dc4  025 nak  026 syn  027 etb
    030 can  031 em   032 sub  033 esc  034 fs   035 gs   036 rs   037 us

要查看更多信息,请参考 ascii 手册页面。

2. cal

在很多系统上要显示日历一般要通过几个步骤。其实你可以使用 cal 命令。

1
2
3
4
5
6
7
8
9
> cal
    August 2013
Su Mo Tu We Th Fr Sa
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

要查看更多信息,请参考 cal 手册页面。

3. xxd

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
> xxd somefile.bin
0000000: 83ff 0010 8d01 0408 d301 0408 a540 0408  .............@..
0000010: d701 0408 d901 0408 db01 0408 0000 0000  ................
0000020: 0000 0000 0000 0000 0000 0000 1199 0508  ................
0000030: df01 0408 0000 0000 e199 0508 1d9a 0508  ................
0000040: e501 0408 2912 0508 e901 0408 eb01 0408  ....)...........
0000050: ed01 0408 ef01 0408 39e0 0408 55e0 0408  ........9...U...
0000060: 71e0 0408 8de0 0408 a9e0 0408 39f7 0408  q...........9...
0000070: 6df7 0408 a5f7 0408 ddf7 0408 15f8 0408  m...............
0000080: 49f8 0408 81f8 0408 7de5 0408 0b02 0408  I.......}.......
0000090: 4ded 0408 a9ed 0408 1102 0408 c5e0 0408  M...............
00000a0: 1502 0408 1702 0408 1902 0408 1b02 0408  ................
00000b0: e50a 0508 1d0b 0508 590b 0508 2302 0408  ........Y...#...
00000c0: 2502 0408 253d 0508 2941 0508 7106 0508  %...%=..)A..q...
00000d0: 8106 0508 690e 0508 990e 0508 c90e 0508  ....i...........
00000e0: 19e1 0408 3702 0408 3902 0408 3b02 0408  ....7...9...;...

这是另外一个让我难以置信是最近才知道的命令。xxd可以生成所给与文件的十六进制拷贝,也可以将编辑好的十六进制拷贝还原成二进制格式。它也可以将十六进制拷贝输出成C的数组,很方便:

1
2
3
4
5
6
7
> xxd -i data.bin
unsigned char data_bin[] = {
  0x6d, 0x61, 0x64, 0x65, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6c, 0x6f, 0x6f,
  0x6b, 0x0a
};
unsigned int data_bin_len = 14;

我也用这个命令来通过比较两个文件的十六进制拷贝来比较两个二进制文件。要查看更多信息,请参考 xxd 手册页面。

4. ssh

ssh是我孰知的第一个稍复杂的unix工具,但是也是在不久前我才意识到除了使用它来登录到远端机器以外,它有更多其他用途。

ssh和它附带的工具可以用来:

1 在计算机之间传递文件(使用scp)

2 X-forwarding – 连接到远端的机器,并且开启一个GUI应用,看起来它们就像在本地开启的一样,即使远端的机器并没有提供X服务。

3 端口转发 – 将到本地端口的连接转发到远端机器的端口,或者将到远端机器端口的连接转发到本地端口

4 SOCKS 代理 – 允许你将一个支持SOCKET代理的应用上的所有连接转发到远端机器。这对于如何更安全使用公共wifi浏览网络和绕过严格的防火墙是很有用的。

5 在本地机器输入一次密码,然后就可以通过ssh的key代理来使用安全身份登陆其余的远端机器,而不需要重复输入你的密码了。

要查看更多信息,请参考 ssh 手册页面。

5. mdfind

这个mac上特有的命令,当然其他的*nix也会有相类似的命令。它和find命令功能相同,但是它是使用Spotlight索引的。它可以让你在数秒内查询你的整个文件系统。你可以使用它来即时展示满足条件的新增文件的更新情况。我经常使用它来查询应用在隐蔽的位置存储的重要文件。

1
2
3
4
> mdfind -name homebrew
/usr/local/Library/Homebrew
/Users/job/Library/Logs/Homebrew

要查看更多信息,请参考 mdfind 手册页面。

转载于:https://www.cnblogs.com/yingkong1987/p/3325941.html

我希望早几年知道的5个Unix命令相关推荐

  1. 系统管理员应该知道的 20 条 Linux 命令

    微信上看到的一篇文章,觉得挺适合非专业人士的,转载过来 https://my.oschina.net/editorial-story/blog/1499026 摘要: 如果您的应用程序不工作,或者您希 ...

  2. 系统管理员应该知道的20条Linux命令

    如果您的应用程序不工作,或者您希望在寻找更多信息,这 20 个命令将派上用场. 在这个全新的工具和多样化的开发环境井喷的大环境下,任何开发者和工程师都有必要学习一些基本的系统管理命令.特定的命令和工具 ...

  3. CSS3 必须要知道的10 个顶级命令

    来源:http://www.cnblogs.com/damonlan/archive/2012/04/23/2465569.html 作者:浪迹天涯 1.边框圆角(Border Radiuas) 这个 ...

  4. 每个程序员都应该知道的8个Linux命令

    为什么80%的码农都做不了架构师?>>>    摘要:Linux里有很丰富的各种命令,有些是很难用的.然而,学会了前面说的这8个命令,你已经能处理大量的log分析任务了,完全不需要用 ...

  5. git bash here创建项目无法选择m_你应该知道的10个Git命令

    作者 | Jeff Hale 来源 | Towards Data Science 编辑 | 代码医生团队 在本文中,将讨论作为开发人员,数据科学家或产品经理应该了解的各种Git命令.将看看使用Git检 ...

  6. 程序员需要知道的8个Linux命令

    每个程序员,在职业生涯的某个时刻,总会发现自己需要知道一些Linux方面的知识.我并不是说你应该成为一个Linux专家,我的意思是,当面对linux命令行任务时,你应该能很熟练的完成.事实上,学会了下 ...

  7. 每个Web开发人员应该知道的12个终端命令

    Tips 原文作者:Danny Markov 原文地址:12 Terminal Commands Every Web Developer Should Know About 终端是开发人员的武器库中最 ...

  8. kubectl logs -f tail 显示100_系统管理员应该知道的9个kubectl命令

    kubectl是Kubernetes的一个命令行管理工具,可用于Kubernetes上的应用部署和日常管理.本文列举了9个常见的kubectl命令,并对每个命令进行了简单扼要的介绍,供大家参考.同时, ...

  9. linux管理员权限命令_每个系统管理员应该知道的20个Linux命令

    linux管理员权限命令 在一个充满新工具和多样化开发环境的世界中,几乎所有开发人员或工程师都必须学习一些基本的sysadmin命令. 特定的命令和程序包可以帮助开发人员组织,排除故障和优化其应用程序 ...

最新文章

  1. 关于学习Python的一点学习总结(23->跳出循环)
  2. 审核网络安全的十大必备工具
  3. 利用 .NET Framework 命令行工具
  4. Mybatis中的jdbcType的作用
  5. HDU - 6183 暴力,线段树动态开点,cdq分治
  6. 腾讯 开源软件列表-开源中国社区
  7. 【平衡规划】Arithmetic Operations(CF1654E)
  8. Linux系统特点介绍集合
  9. LeetCode 96——不同的二叉搜索树
  10. sonar+Jenkins 构建代码质量自动化分析平台
  11. 抖音极速版—–青龙面板
  12. oracle11g dataguard安装实施
  13. 图标及按钮在线搜索制作工具
  14. 获取颜色值 抓取颜色值 获取颜色代码RGB
  15. 微信网页开发异常——签名失败
  16. 【蓝桥杯】PREV-55 小计算器
  17. CUDA实例系列三:利用GPU优化向量规约问题
  18. SimpleDateFormat日期格式化顺延,setLenient关闭顺延
  19. android女手机弹唱take a bow,黑科技!不会乐器也能钢琴弹唱,手机上就能练习,你应该知道...
  20. 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问。

热门文章

  1. 环信SDK 踩坑记webIM篇(二)
  2. PHP笔记-AES加解密(PHP7)
  3. Java笔记-springframework.ws中拦截器的使用(SOAP)
  4. Linux笔记-手动配置yum及光盘安装rz
  5. error: undefined reference to `_imp__glXXX@XX'
  6. 5.3矩阵的压缩存储(稀疏矩阵转置和快速转置)
  7. C/C++判断是否为笔记本电脑
  8. HTML期末作业-家乡网站
  9. android 数据回传代码,安卓向.net core api传输图片,执行保存到数据库命令后返回400错误代码,用postman测试没有问题安卓程序不行...
  10. linux中用户识别码,C语言中设置用户识别码的相关函数的简单讲解