- 浏览: 4754161 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
bzhao:
你也应该可以这样:(not tested)./rbtunnel ...
在Bash脚本中怎么关闭文件描述符? -
bzhao:
如果有A进程原代码情况下,通过如下调用,把他的子进程继承关闭则 ...
在Bash脚本中怎么关闭文件描述符? -
Master-Gao:
楼主咋没分析下源码呢?
我使用过的Linux命令之dirname - 截取给定路径的目录部分 -
jiedushi:
tail -F 就可以吧
Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 -
java_is_new:
新手学习了,就是不明白为一个网卡配多个ip有什么用
我使用过的Linux命令之ifconfig - 网络配置命令
我使用过的Linux命令系列总目录(7.2更新,98篇)
本文链接: http://codingstandards.iteye.com/blog/786653 (转载请注明出处)
概述
关于命令类型划分
本表中列出了我穷尽了我所有的记忆整理出来的Linux命令,其中关于外部命令、关键字或内建命令的划分,不一定正确。有很多命令,既是内建命令也 可能是外部命令,为啥?Bash为了更高效率的执行命令和脚本,把很多外部命令以内建命令的方式实现了。我们使用type这个命令就可以知道一个命令的类 型了,如下所示:
[root@jfht ~]# type -a type
type is a shell builtin <== builtin就是指内建命令
[root@jfht ~]# type -a pwd
pwd is a shell builtin
pwd is /bin/pwd <== 此乃外部命令
[root@jfht ~]# type -a ls
ls is aliased to `ls --color=tty' <== 此乃别名
ls is /bin/ls
[root@jfht ~]# type -a for
for is a shell keyword <== 此乃Shell关键字
[root@jfht ~]#
关于本系列文章
首先,这只是我个人十多年来使用Unix/Linux的经验的总结。我经常感觉自己在Linux的使用和维护方面好像知道得不少了,但是发现沉下心 来总结的时候,发现还是很弱的。其实很多东西只是知道个名字,知道点皮毛,更谈不上深入的理解。在写这些文章的时候,我参考了相同类型的文章,通常是 Google搜索的前几页结果,我都会看一下,发现总能得到一些新的知识、新的启发,感觉到学无止境,厉害的角色很多。
其次,这些文章并非某个命令的手册页,只是我平时使用它们的时候的一些惯用法,或者写Bash脚本的时候是怎么用的。我认为,对于这些Linux命 令,不可能、也没有必要把所有的参数记住,只需要把常用的记住,然后使用man去查看手册页。与其知道每个具体的东西,不如知道在哪里去找它。这一点,我 深深的体会到Unix/Linux在文档方面的完善,真正是一个适合开发者使用的平台。
再次,我所写的东西并非完全正确、有可能似是而非,但我尽可能多去实际的去执行一下它们。我非常欢迎各位热爱Linux的朋友们一起参与讨论,特别 是我每篇文章都会有一个“问题思考”部分,其实有些问题也是我本人不那么确定或者正在寻找答案的问题。在此,我要感谢各位,浪费了你们宝贵的时间来看这些 质量不怎么高的文章。
命令字母顺序表
这个一个浩大而艰巨的任务,我非常担心能不能完成它。我想说,世界上最难得两个字:坚持!
首字母 |
外部命令(某些也可能是内建命令) |
关键字或内建命令 |
内置环境变量 |
A |
ac 在线时间统计 adduser 添加用户账号 ant 强大的Java开发构建工具 apropos 根据关键字搜索命令 ar arp 操作arp缓存 at 在指定时间执行一次任务 autofork awk |
alias |
|
B |
bash base64 用base64编解码 basename 去掉文件名的目录和后缀 bc 浮点数计算器、进制转换 |
bg break
|
|
C |
cal 显示日历 cat 连接文件或标准输入并打印 cc chgrp chkconfig 查询/修改系统服务的运行级别 chmod chown chroot clear 清除终端屏幕,不是cls comm complete 强劲的bash参数补全功能 cp 复制文件 cpio cronolog (2009.09.22) crontab curl 强大的网络传输工具 cut cvs |
case 多分支判断语句 cd 更改当前工作目录 continue
|
|
D |
date dd (2009.09.19) df 查看磁盘空间占用情况 diff dir dirname 截取给定路径的目录部分 dmesg 查看开机信息/打印或控制内核环形缓冲区 dmidecode 查看硬件信息 dos2unix 把DOS格式的文本文件转换成Unix格式 dot 绘制DOT语言脚本描述的图形 doxygen du 查看文件的磁盘空间占用情况 |
declare dirs (2010.03.15) do done |
|
E |
echo 显示文本、打印信息 egrep env 显示当前用户的环境变量 eval exec expr |
elif else esac exit 退出当前shell export |
|
F |
false fgrep file 检测并显示文件类型 find free 显示内存的使用情况 ftp |
fg fi for Bash中的for循环
|
|
G |
gawk gdb gcc grep groupadd (2009.09.19) groupdel (2009.09.19) groupmod (2009.09.19) groups (2009.09.19) gunzip gzip g++ |
|
|
H |
halt 停止系统运行,但不关闭电源 head help 显示Bash内建命令的帮助信息 hexdump “十六”进制查看器 hostname 显示或设置主机名 hwclock 查询和设置硬件时钟 |
help history |
HISTTIMEFORMAT HISTSIZE HISTFILESIZE HISTFILE HISTCONTROL HISTIGNORE |
I |
iconv 字符编码转换工具 ij ifconfig iptables iptables-save (2009.09.19) iptables-restore (2009.09.19) info insmod |
if Bash中的条件判断 in |
|
J |
java javac jar jps (2009.09.19) jstat (2009.09.19) jmap (2009.09.19) jinfo (2009.09.19) javadoc jobs 显示当前终端关联的后台任务情况 join 根据关键字合并数据文件 |
|
|
K |
kill 终止进程/发送信号 killall 杀死指定名字的进程 |
|
|
L |
ls 显示文件目录列表 less lsof locate ln lsmod last ld ll lsb_release 查看当前系统的发行版信息 |
|
|
M |
more mv 文件或目录改名、移动位置 man 显示在线手册页 mysql MySQL客户端命令行工具 mkdir make 强大的编译工具 mysqldump mount mysqladmin (2009.09.27) |
|
|
N |
nano 比vi简单易用的文本编辑器 nohup 执行其他命令,并且忽略SIGHUP信号 netstat nslookup nice (2010.03.15) nginx (2010.09.29) |
|
|
O |
openssl (2009.09.19) |
|
|
P |
ps 显示当前正在运行的进程列表 pstree 以树状图显示进程间的关系 ping pwd 显示当前工作目录 perl php pidof 找出正在运行程序的进程PID printf (2009.09.22) |
popd (2010.03.15) pushd (2010.03.15) |
PATH PS1 PS2 PS3 PS4 PROMPT_COMMAND |
Q |
quota |
|
|
R |
rm 删除文件或目录 rmdir read reset 终端屏幕混乱的终结者 rmmod rar route rpm rpmbuild rlwrap (2009.09.19) rsync (2010.03.08) renice (2010.03.15) rz 批量上传文件,简单易用 |
return |
RANDOM |
S |
ssh Secure Shell 客户端 sftp 安全文件传输命令行工具 su setsid sort screen 虚拟终端屏幕管理器 sed setup service 系统服务管理 sleep 延迟指定时间 set sqlplus sox sh sysctl sync 强制将内存中的文件缓冲内容写到磁盘 strings 打印文件中的可打印字符串 stty 显示和修改终端行设置 stat 显示文件或文件系统状态 ssh-keygen (2010.03.15) ssh-copy-id (2010.03.15) sar (2010.03.15) sadc (2010.03.15) sa1 (2010.03.15) sa2 (2010.03.15) swig 把C/C++代码嵌入Java等语言的开发工具 sz 下载文件,无需ftp/sftp |
shift shopt (2010.03.15) select (2010.03.15) set (2010.03.15) source 在当前shell环境中执行指定文件中的命令 |
|
T |
time 测定一个命令的资源使用情况 telnet 基于TELNET协议的远程登录工具 tac 与cat相反的命令 tar 解压缩工具 top 实时监视Linux任务 tty 打印标准输入的文件名称 tree 以树状图列出目录的内容 tracert test tail
输出文件尾部/动态监视文件尾部 tailf 跟踪日志文件/更好的tail -f版本 touch 创建文件或修改文件时间 true 啥也不做,设置退出码为0 tee 重定向输出到多个文件 tr tsort 拓扑排序 tzselect 选择时区 type 显示命令的类型 |
then trap 在脚本中处理信号
|
|
U |
uptime 显示系统运行时间 uname 打印系统信息 uniq unzip 解压zip文件 uncompress 解压.Z文件 unrar 解压rar文件 updatedb usleep 延迟以微秒为单位的时间 useradd 添加用户账号 userdel usermod umount unix2dos (2009.09.19) |
ulimit 在shell进程中限制系统资源 umask until unset |
|
V |
vi 广泛使用的文本编辑器 vim (2010.09.28) vmstat valgrind (2010.09.29) |
|
|
W |
w 显示谁登录了系统及在做什么 who 查看当前登录用户 whereis 查找命令的位置 wc wget wait whatis ( 2009-10-18 ) |
while Bash中的while循环 |
|
X |
xargs |
|
|
y |
yes 重复输出字符串 |
|
|
Z |
zip |
|
|
^ |
^Z (2010.03.15) ^R (2010.03.15) |
|
|
发表评论
-
在Linux用tar归档压缩文件时忽略某些文件和目录
2013-02-01 10:19 17053在Linux下,常用tar对文 ... -
使用nmap扫描服务器端口的一次操作
2012-11-01 17:00 15139使用nmap扫描服务器端口的一次操作 本文来自:http ... -
我使用过的Linux命令之wget - ooo
2011-09-14 13:10 0我使用过的Linux命令之wg ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:53 9149简明 Vim 练级攻略 http://coolshell.c ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:49 1简明 Vim 练级攻略 http://coolshell.c ... -
我使用过的Linux命令之:(冒号) - 啥也不做(除了……)
2011-08-29 13:18 12100我使用过的Linux命令之: ... -
我使用过的Linux命令之date - 显示、修改系统日期时间
2011-08-25 09:21 41985我使用过的Linux命令之da ... -
我使用过的Linux命令之declare - 声明shell变量(不知道没关系、知道了就更好的内建命令)
2011-08-16 09:22 21831我使用过的Linux命令之declare - 声明shell变 ... -
我使用过的Linux命令之alias - 设置命令的别名,让 Linux 命令更简练
2011-08-11 09:31 28827我使用过的Linux命令之alias - 设置命令的别名,让 ... -
我使用过的Linux命令之ar - 创建静态库.a文件
2011-08-08 10:40 51934我使用过的Linux命令之ar - 创建静态库.a文件 本 ... -
我使用过的Linux命令之crontab - 设置例行任务(类似于Windows中的任务计划)
2011-08-04 22:26 9752我使用过的Linux命令之crontab - 设置例行任务(类 ... -
我使用过的Linux命令之chmod - 改变文件/目录的访问权限
2011-08-03 21:33 10706我使用过的Linux命令之chmod - 改变文件/目录的访问 ... -
我使用过的Linux命令之export - 设置或显示环境变量
2011-08-02 19:55 25441我使用过的Linux命令之export - 设置或显示环境变量 ... -
我使用过的Linux命令之wc - 统计文件行数、单词数或字节数
2011-07-26 10:50 29016我使用过的Linux命令之wc - 统计文件行数、单词数或字节 ... -
我使用过的Linux命令之groupdel - 删除群组
2011-07-22 22:13 9693我使用过的Linux命令之gr ... -
我使用过的Linux命令之ifconfig - 网络配置命令
2011-07-21 20:43 60552我使用过的Linux命令之ifconfig - 网络配置命令 ... -
我使用过的Linux命令之ll - 列出文件/目录的详细信息
2011-07-20 21:22 7209我使用过的Linux命令之ll ... -
我使用过的Linux命令之mkdir - 创建目录
2011-07-20 20:58 13686我使用过的Linux命令之mkdir - 创建目录 本文链 ... -
我使用过的Linux命令之perror - 解释错误代码
2011-07-18 20:29 25079我使用过的Linux命令之perror - 解释错误代码 ... -
我使用过的Linux命令之ping - 测试与目标主机的连通性
2011-07-16 10:46 26615我使用过的Linux命令之ping - 测试与目标主机的连通性 ...
相关推荐
### Linux系统安装 - Centos7.2/7.3系统安装 #### 一、CentOS 7.2/7.3 安装流程详解 **1.1 选择操作系统版本** - **目标版本:** CentOS 7.2/7.3 - **选择理由:** 这两个版本是在 CentOS 7 系列中较为稳定的版本...
3. **教育与培训**:许多教育机构使用CentOS 7.2作为教学平台,帮助学生学习Linux操作系统的基础知识和技术。 4. **个人学习与实验**:对于希望深入学习Linux操作系统的个人用户而言,CentOS 7.2提供了一个稳定的...
LibreOffice是一款开源的办公...总的来说,编译LibreOffice 7.4.7.2的arm64版本是为了解决在基于鲲鹏910这类ARM架构设备上使用办公软件的需求,提供与x86架构同样功能丰富的体验,同时充分利用硬件的性能和能效优势。
这种格式的文件通常在Linux或类Unix系统上使用,通过tar命令解压,然后用gzip工具进行压缩,方便在网络上传输和存储。 PHP 7.2是PHP的一个重要分支,于2017年11月30日发布,带来了许多性能提升和新特性。7.2.32是该...
### Oracle Linux 7.2 下 Oracle 11.2.0.4 RAC 部署详解 #### 一、OEL7.2 操作系统安装 在开始部署 Oracle RAC 之前,首先需要安装 Oracle Linux 7.2 操作系统。这一步骤包括以下流程: 1. **准备安装介质**:将 ...
### LFS7.2 英文版:自己定制 Linux 系统 #### 一、概述与背景 《LFS7.2 英文版》是一本由 Gerard Beekmans 创建,Matthew Burgess 和 Bruce Dubbs 编辑的专业指南,旨在帮助读者从零开始构建一个完整的 Linux ...
在解压"LibreOffice-7.4.7-Linux-x86-64-rpm.tar.gz"后,会得到"LibreOffice_7.4.7.2_Linux_x86-64_rpm"目录,其中包含了一系列的RPM文件,比如主程序、语言包、帮助文件等。用户需要通过终端或图形界面的包管理工具...
### RoseMirrorHA for Linux安装攻略 #### 一、概述 RoseMirrorHA是一款为Linux系统设计的高可用性(HA)解决方案。它通过提供一系列的服务和工具来确保关键业务应用程序和服务能够在发生故障时自动切换到备用服务器...
本书详细讲解了用Linux的图形配置工具配置Caldera OpenLinux,通过一个ppp与网络连接、使用K桌面环境、用StarOffice提高在家办公的效率、网络浏览、发传真、接收email及使用GIMP等图形工具。 24学时每次1小时的课程...
1. **LibreOffice 7.2.5 版本**: 这是LibreOffice的一个稳定版本,7.2.5意味着它是7.2系列中的第五个小版本更新,通常包含错误修复、性能提升和用户体验改进。每个新版本都会对软件的功能、稳定性和兼容性进行优化。...
大多数Linux命令都支持`--help`选项来显示命令的帮助信息。这种方式通常比`man`命令提供的信息更简洁,更适合快速查阅。 #### 二、文件操作 文件操作是Linux中最基础也是最常用的操作之一,主要包括目录操作、文件...
### Linux下网卡网络配置基础 在Linux操作系统中,网络配置是系统管理的重要组成部分,尤其对于初学者来说,掌握基本的网卡配置方法是至关重要的。本文将详细解析如何在Linux环境中配置网卡,帮助读者深入理解并...
RPM(Red Hat Package Manager)是Linux发行版中最常见的软件包管理器之一,尤其在Fedora、CentOS和RHEL等系统中广泛使用。通过RPM包,用户无需手动编译源代码,可以方便地进行安装、升级和卸载操作。 PHP...
在Linux环境中,Kettle作为一个强大的数据集成工具,它的高效运行离不开一系列依赖包的支持。其中,`libwebkitgtk-1_0-0-2.4.10-7.2.x86_64`是Kettle运行时的重要组件,它与许多底层库紧密关联,为图形用户界面(GUI...
目录 第1章 嵌入式系统基础知识 .1 1.1 嵌入式系统概述 1 1.1.1 嵌入式系统的发展史 2 1.1.2 嵌入式系统的定义与特点 3 1.1.3 嵌入式系统的特点 4 1.2 嵌入式系统的组成 5 1.2.1 嵌入式系统的...
通过`man`命令可以获取到几乎所有的Linux命令、程序或工具的使用说明。例如,如果想要了解`libnet`库的相关信息,可以通过以下命令: ```bash nroff -man `man libnet.3` | less ``` 这里的`nroff`是一个文本格式...