一些鲜为人知的但却很有趣的Unix/Linux命令

原帖链接: http://www.diguage.com/archives/8.html

 

xargs 或者 parallel,从标准输入中读取信息作为参数,初始化可执行命令,然后一次或多次运行该指令。可并行执行。 sedawk,这两个指令可以说大名鼎鼎,可以说是处理文本文件的万能机器,并且速度还比Ruby或者Python快。 m4,简单的宏处理器,主要用途是在无参数宏不够强力的情况下用做 Ratfor 的前端; screen,强大的终端复用以及会话保持工具;(参考资料中有详细说明,D瓜哥没搞懂啥意思,懂的朋友麻烦给解释解释。呵呵) yes,将参数的字符串重复输出,直到该命令被强行“杀死”;如果没有参数则打印y; cal,排版很不错的日历; env,显示当前用户的环境变量; look,查找出以参数字符串开头的英语单词; cut,用来分割文件中的字符串,并且根据要求进行显示; paste,将几个文件的相应行用制表符连接起来,并输出到标准输出; join,根据公共字段(关键字)来合并两个文件的数据行,“参考资料”中的文章说明的特别详细,建议看看; fmt,从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备; pr,快速的将一连串文本编排成合适打印的格式,一个基本用途就是将较大的文件分割成多个页面,并为每个页面添加标题。pr是一个标准的输出工具,可以直接输出到打印机,如果你希望将结果保存在文件中,则需要重定向它的输出; fold,从指定的文件里读取内容,将超过限定列宽的列加入增列字符后,输出到标准输出设备; column,将文本根据空白符格式化成表格形式,然后输出。 expand,将文件中的制表符(TAB)转换为空白字符(Space),将结果显示到标准输出设备; unexpand,和expand相反,将文件中空白字符(Space)的转换为制表符(TAB),将结果显示到标准输出设备; nl,显示文件内容,同时在每行前面加上行号; seq,显示从1到指定数字的数字序列,如果参数为负数,则不显示; bc,一个简单的计算器;
  • factor, 将一个数分解成多个数的乘积;
  • nc, 强大的网络工具,可用于网络调试或数据传输等;
  • dd, 用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换;
  • file, 辨识文件类型;
  • stat, 查询、显示文件相关信息,比如修改时间、大小等等;
  • tac, 反向输出文件内容;
  • shuf, 把输入行(或者文件)按随机顺序输出到标准输出;
  • comm, 按行比较两个已排过序的文件;
  • hexdump(可以简写成hd), 一般用来查看”二进制“文件的十六进制编码;
  • bvi, 二进制文件编辑器;
  • strings, 显示文件中的可打印字符;
  • tr, 快速的实现字符的简单转换,也可以删除字符串中的指定子串,合并字符串中重复串;
  • iconv, 将指定文件从一种编码转换为另一种编码
  • split, 可将文件切成较小的文件,预设每1000行会切成一个小文件;
  • csplit, 将文件依照指定的范本样式予以切割后,分别保存成名称为xx00,xx01,xx02…的文件;
  • 7z, 高比率的文件压缩;
  • ldd, 用来分析程序运行时需要依赖的动态库的工具;
  • nm, 用来查看指定程序中的符号表相关内容的工具;
  • ab, Web性能基准测试工具;
  • strace, 跟踪进程执行时的系统调用和所接收的信号;
  • mtr,非常好用的网络连通性判断工具;
  • cssh,全称cluster ssh,是可以多窗口同时操作的工具;
  • wireshark,强大网络抓包工具,并为用户提供关于网络和上层协议的各种信息,是世界上最流行的网络分析工具;
  • tshark,wireshark对应的命令行工具;
  • host,DNS解析查询工具,即把一个主机名解析到一个IP地址上或把一个IP地址解析到一个主机名;
  • dig,DNS解析查询工具,比host命令显示的更显示,但是没host通俗易懂;
  • lsof,是list open files的简写,是一个列出当前系统打开文件的工具;
  • dstat,收集系统的运行数据,还可以收集指定的性能资源;
  • iostat,CPU和硬盘IO使用状态的查询工具;
  • htop,top命令的升级版,交互式的命令行进程监视器;
  • last,查系统的登陆日志;
  • w,显示目前登入系统的用户信息,比who功能更加强大;
  • id,查询用户的用户ID和群组ID信息;
  • sar,主要负责收集、汇报与存储系统运行信息的;
  • iftop,类似于top的实时流量监控工具;
  • ss, 用来查看socket信息的命令,netstat的升级版;
  • dmesg,用于显示内核缓冲区系统控制信息的工具;
  • hdparm,用于检测、显示与设定IDE或SCSI硬盘的参数;
  • lsb_release,用来查看当前系统的发行版信息;
  • lshw,即list hardware,可以查看硬件信息的工具;
  1. fortune,每次运行这个指令,都会给出一句有趣的话,或者一对有意思的问答。可以边学英语,边乐和,寓教于乐!哈哈
  2. sl, 这个指令很有趣,直接给你开出一辆蒸汽机车来。谁玩谁知道!
  3. sudo !!,以root用户身份,执行最后一次的命令;这个非常有用!强烈推荐…
  4. cat < /dev/tcp/domain-or-ip/port-here,可以创建一个一次性的TCP Socket链接;
  5. tree,以树的形式现实当前目录以及子目录所有
  6. pv,即Pipe Viewer,查看运行时间比较长的命令的执行
  7. ncdu,即NCurses Disk Usage,递归显示每个文件(或者文件夹)占用的磁盘空间;
  8. fdupes,查找并删除重复的文件;
  9. find,专门用于查找文件,而且提供了很多你意想不到的功能;
  10. sdiff,以并排方式合并文件之间的差异;
  11. base64,将数据(文本、二进制文件等)以Base64编码方式解释称字符串,然后输出;
  12. nice,以指定的优先级运行命令;如果不指定优先级,程序会显示当前的优先级;
  13. uname,输出一组系统信息。如果不加任何参数,则只显示内核名称;
  14. setfacl,设定文件的访问控制列表;
  15. tee,将标准输入重定向到文件或者标准输出中;
  16. mc,Midnight Commander (MC)是 Linux 控制台和其它终端环境中的“瑞士军刀”,是一个很方便的文件管理器,相当于Windows下的 Total Commander
  17. beep or "echo -e ‘\a’>/dev/console",计算机发出嘟嘟的声音,用于向计算机用户告警,比如命令没有完成
  18. mesg,控制是否允许其他发送信息到自己的终端机界面
  19. write,向该计算机的其他用户发送信息 (以Ctrl+D结尾)
  20. wall,向该计算机的所有用户发送一条信息;
  1. finger,查询用户的信息,通常会显示系统中某个用户的用户名、主目录、停滞时间、登录时间、登录shell等信息;
  2. !!,重复执行上一条命令;另外,!pattern可以快速执行曾经执行过的命令中,以patttern开头的命令,相当方便快捷;
  3. at,定时调度,一定的时间间隔运行作业,需要只运行作业一次而不是定期运行时,使用 at 命令;
  4. wc,查询文件中有多少行或者单词;
  5. taskset,限制进程所占用的CPU数量;
  6. tail,命令的功能是显示文件后几行内容,默认10行。一般用于查看日志文件。会根据日志更新不断输出最新的文件内容,不需要刷新查看,ctrl+c可结束输出;
  7. apropos,Linux中除man以外很强大的帮助命令,命令实际完成的是搜索其它命令的描述信息,将相关命令罗列出来,不一定出现的命令就是想要的,但可以从中帮助回忆到有用的命令;
  8. nload,实时查看linux服务器网络流量的工具;:I really like nload and iftop to monitor network activity when tcpdump low-levelness is not needed.
  9. find -delete,查找然后删除符合筛选条件的文件;
  10. watch,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行;
  11. xxd,将一个文件以十六进制的形式显示出来;
  12. Ctrl + r ,反向搜索执行过的命令,很好很强大!有了这个,就可以把history抛弃了;
  13. dmidecode,以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息,这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置;
  14. most,和more、less功能一样,文本查看器;
  15. iptraf,监控网络流量,特别是安装到防火墙上,与Iptables一起工作,监控流经防火墙的网络异常,效果非常好;
  16. open,可以根据文件扩展名,使用相关联的程序打开文件;
  17. cowsay,这个命令可以让一个牛仔说上两句幽默。(鉴于上篇文章的评论,这个指令也许已经归到游戏行列中。敬请注意。)
  18. rsync,实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息;
  19. pgrep,通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行;
  20. yacc,用来生成编译器的编译器(编译器代码生成器);
  21. du,统计目录(或文件)所占磁盘空间的大小;
  22. ssh,用于远程登录上Linux主机;

 

 

你可能感兴趣的:(Linux)