Linux实用工具的命令行详解
脚本之家
这是一个确凿的事实,许多IT专业人士使用Linux命令行,即使在GUI也可用的情况下。嘿,我们的第一个Linux 命令行指南的点击量超过了5万次。但是让我们听一听来自IT专家的理由,在这个案例中,我们倾听来自工程部gotalk高级技术专家David Witham的理由。
“我就靠着命令行为生。命令行给你对你所做的事情和需要完成的事情的最终控制权。如果没有命令来完成的话,你可以编写脚本或者管线来完成。使用GUI的话,所见即所得。你通常不能再构建你自己的GUI附件了。一个大的好处就是远程访问。使用命令行进行远程访问通常要容易得多,它占用的带宽比终端服务或者其他的图形化远程访问方式更少。”
Joe Klemmer:
1 expect:“我使用expect来完成许多通常需要反复执行的需要很多时间的系统管理任务;类似在我的桌面电脑和服务器之间移动文件这样的事情就可以用expect来完成。”
2 lft:“lft就像是类固醇的追踪路由。你可以获得比追踪路由更多得多的信息,用于调试连接或者只是用来寻找机器或者系统在哪里。”
3 mc:“它是最好的文件管理器。自从我在DOS上使用了Norton Commander,从DOS到Linux的转换变得如此轻松。”
David Witham:
4 sdiff:“sdiff对2个文本文件之间的差别产生对人类友好的描述。它将文件分列两侧,使用符号来显示只在左边文件中的行,还有2个文件之间有差异的行,还有只在右边文件存在的行。它的结果阅读起来比diff的输出要容易得多。”
Jim Reem:
5 xargs:“xargs从标准输出的数据中创建命令行。”
6 for, while:“for, while用于‘在一列选项中循环,对每个选项都完成一定的动作。’”
7 read:用来“将标准输入的文本行读入shell变量,以便以后的处理”
8 sort:用来“将文本按照字母或者数字顺序进行排列;支持多个排列关键字。”
9 uniq:用来“删除列表中重复的行”
10 tr:用来“转换或者删除来自文本流的字符”
11 od:用来“将二进制文件以十进制(或者十六进制)存储”
12 wc:用来“统计文件中的字数”
13 top:“好像vmstat,获得关于系统运行情况的视图,了解哪个进程占用了全部的内存。”
14 ps:“了解某个进程的细节”
Christian P. Roberts:
15 date:“在制订基准的时候,放在脚本中进行调用,以便输出当前的信息,很有用”
16 env:“在解决dotfiles的麻烦的时候,用另外一个账号来查看环境变量。”
17 ln:“啊……软链接是在网站上工作的必需品。”
18 mget:“用得不是非常多了,但是它在用一个命令处理多个文件方面确实不错。”
19 nslookup:计算机的真实名字是什么……或者“到那里去是否安全?”
20 passwd:通常让其他人发送这个命令来设置一个我临时使用的密码。
21 ps:通常用于连接“kill”命令
22 uname:当在不同的计算机上工作的时候很有帮助,因为这些计算机在操作系统层面可能不同步。
23 whoami:是的,我是谁……意思就是“我在以什么身份运行?”
“我就靠着命令行为生。命令行给你对你所做的事情和需要完成的事情的最终控制权。如果没有命令来完成的话,你可以编写脚本或者管线来完成。使用GUI的话,所见即所得。你通常不能再构建你自己的GUI附件了。一个大的好处就是远程访问。使用命令行进行远程访问通常要容易得多,它占用的带宽比终端服务或者其他的图形化远程访问方式更少。”
Joe Klemmer:
1 expect:“我使用expect来完成许多通常需要反复执行的需要很多时间的系统管理任务;类似在我的桌面电脑和服务器之间移动文件这样的事情就可以用expect来完成。”
2 lft:“lft就像是类固醇的追踪路由。你可以获得比追踪路由更多得多的信息,用于调试连接或者只是用来寻找机器或者系统在哪里。”
3 mc:“它是最好的文件管理器。自从我在DOS上使用了Norton Commander,从DOS到Linux的转换变得如此轻松。”
David Witham:
4 sdiff:“sdiff对2个文本文件之间的差别产生对人类友好的描述。它将文件分列两侧,使用符号来显示只在左边文件中的行,还有2个文件之间有差异的行,还有只在右边文件存在的行。它的结果阅读起来比diff的输出要容易得多。”
Jim Reem:
5 xargs:“xargs从标准输出的数据中创建命令行。”
6 for, while:“for, while用于‘在一列选项中循环,对每个选项都完成一定的动作。’”
7 read:用来“将标准输入的文本行读入shell变量,以便以后的处理”
8 sort:用来“将文本按照字母或者数字顺序进行排列;支持多个排列关键字。”
9 uniq:用来“删除列表中重复的行”
10 tr:用来“转换或者删除来自文本流的字符”
11 od:用来“将二进制文件以十进制(或者十六进制)存储”
12 wc:用来“统计文件中的字数”
13 top:“好像vmstat,获得关于系统运行情况的视图,了解哪个进程占用了全部的内存。”
14 ps:“了解某个进程的细节”
Christian P. Roberts:
15 date:“在制订基准的时候,放在脚本中进行调用,以便输出当前的信息,很有用”
16 env:“在解决dotfiles的麻烦的时候,用另外一个账号来查看环境变量。”
17 ln:“啊……软链接是在网站上工作的必需品。”
18 mget:“用得不是非常多了,但是它在用一个命令处理多个文件方面确实不错。”
19 nslookup:计算机的真实名字是什么……或者“到那里去是否安全?”
20 passwd:通常让其他人发送这个命令来设置一个我临时使用的密码。
21 ps:通常用于连接“kill”命令
22 uname:当在不同的计算机上工作的时候很有帮助,因为这些计算机在操作系统层面可能不同步。
23 whoami:是的,我是谁……意思就是“我在以什么身份运行?”