logout命令用于退出当前登录的Shell,logout指令让用户退出系统,其功能和login指令相互对应。语法:logout。
export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。一个变量创建时,它不会自动地为在它之后创建的shell进程所知。
exec命令用于调用并执行指令的命令。exec命令通常用在shell脚本程序中,可以调用其他的命令。如果在当前终端中使用命令,则当指定的命令执行完毕后会立即退出终端。
env命令用于显示系统中已存在的环境变量,以及在定义的环境中执行指令。该命令只使用"-"作为参数选项时,隐藏了选项"-i"的功能。若没有设置任何选项和参数时,则直接显示当前的环境变量。
unset命令用于删除已定义的shell变量(包括环境变量)和shell函数。unset命令不能够删除具有只读属性的shell变量和环境变量。
kill命令用来删除执行中的程序或工作。kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。
unalias命令用来取消命令别名,是为shell内建命令。如果需要取消任意一个命令别名,则使用该命令别名作为指令的参数选项即可。如果使用-a选项,则表示取消所有已经存在的命令别名。
type命令用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令。命令类型:alias:别名。keyword:关键字,Shell保留字。function:函数,Shell函数。
time命令用于统计给定命令所花费的总时间。语法:time(参数)。参数:指令:指定需要运行的额指令及其参数。
vmstat命令的含义为显示虚拟内存状态(“Viryual Memor Statics”),但是它可以报告关于进程、内存、I/O等系统整体运行状态。
sar命令是Linux下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。
mpstat命令指令主要用于多CPU环境下,它显示各个可用CPU的状态系你想。这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息。
iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。
losetup命令用来设置循环设备。循环设备可把文件虚拟成块设备,借此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
dmidecode命令可以让你在Linux系统下获取有关硬件方面的信息。dmidecode的作用是将DMI数据库中的信息解码,以可读的文本方式显示。
hwclock命令是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。
cdrecord命令用于Linux操作系统下光盘刻录,它支持cd和DVD格式。linux操作系统下一般都带有cdrecord软件。语法:cdrecord(选项)(参数)。
setpci命令是一个查询和配置PCI设备的使用工具。语法:setpci(选项)(参数)。选项:-v:显示指令执行的细节信息;-f:当没有任何操作需要完成时,不显示任何信息。
lspci命令用于显示当前主机的所有PCI总线信息,以及所有已连接的PCI设备信息。语法:lspci(选项)。选项:-n:以数字方式显示PCI厂商和设备代码。
lsusb命令用于显示本机的USB设备列表,以及USB设备的详细信息。lsusb命令是一个学习USB驱动开发,认识USB设备的助手,推荐大家使用。
arch命令用于显示当前主机的硬件架构类型。arch命令等同于命令name -m在当前的Linux操作系统下,arch命令输出结果有:i386、i486、i586、alpha、sparc、arm、m68k、mips、ppc、i686等。
volname命令用于显示指定的“ISO-9660”格式的设备的卷名称,通常这种格式的设备为光驱。语法:volname(参数)。参数:设备文件名:指定要显示卷名称的设备。
systool命令指令显示基于总线、类和拓扑显示系统中设备的信息。语法:systool(选项)(参数)。选项:-a:显示被请求资源的属性;-b<总线>:显示指定总线的信息。
LSB是Linux Standard Base的缩写,lsb_release命令用来显示LSB和特定版本的相关信息。如果使用该命令时不带参数,则默认加上-v参数。
sysctl命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中。它包含一些TCP/ip堆栈和虚拟内存系统的高级选项,这可以让有经验的管理员提高引人注目的系统性能。
slabtop命令以实时的方式显示内核“slab”缓冲区的细节信息。语法:slabtop(选项)。选项:--delay=n, -d n:每n秒更新一次显示的信息,默认是每3秒。
kernelversion命令用于打印当前内核的主版本号。语法:kernelversion。具体使用方法在Linux命令行中输入kernelversion指令即可。
get_module命令用于获取Linux内核模块的详细信息。语法:get_module 模块名。实例:使用lsmod命令查看内核模块。
kexec命令是Linux内核的一个补丁,让您可以从当前正在运行的内核直接引导到一个新内核。在上面描述的引导序列中,kexec跳过了整个引导装载程序阶段(第一部分)并直接跳转到我们希望引导到的内核。
dmesg命令被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息保存在/var/log/dmesg文件里。
uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。语法:uname(选项)。选项:-a或--all:显示全部的信息。
depmod命令可产生模块依赖的映射文件,在构建嵌入式系统时,需要由这个命令来生成相应的文件,由modprobe使用。
bmodinfo命令用于显示给定模块的详细信息。语法:bmodinfo(选项)(参数)。选项:-a:显示模块作者;-d:显示模块的描述信息。
modprobe命令用于智能地向内核中加载模块或者从内核中移除模块。modprobe可载入指定的个别模块,或是载入一组相依的模块。
rmmod命令用于从当前运行的内核中移除指定的内核模块。执行rmmod指令,可删除不需要的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放如核心。
insmod命令用于将给定的模块加载到内核中。Linux有许多功能是通过模块的方式,在需要时才载入kernel。如此可使kernel较为精简,进而提高效率,以及保有较大的弹性。
lsmod命令用于显示已经加载到内核中的模块的状态信息。执行lsmod命令后会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。
在Linux下可以使用blkid命令对查询设备上所采用文件系统类型进行查询。blkid主要用来对系统的块设备(包括交换分区)所使用的文件系统类型、LABEL、UUID等信息进行查询。
du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件与目录磁盘使用的空间的查看,还是和df命令有一些区别的。语法:du [选项][文件]。
lsblk命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。块设备有硬盘,闪存盘,cd-ROM等等。lsblk命令包含在util-linux-ng包中,现在该包改名为util-linux。
pvck命令用来检测物理卷的LVM元数据的一致性。默认情况下,物理卷中的前4个扇区保存着LVM卷标,可以使用--labelsector选项指定其他的位置(例如:数据恢复时)。
pvremove命令用于删除一个存在的物理卷。使用pvremove指令删除物理卷时,它将LVM分区上的物理卷信息删除,使其不再被视为一个物理卷。
lvextend命令用于在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问。使用lvextend命令动态在线扩展磁盘空间,整个空间扩展过程对于应用程序来说是完全透明的。
pvdisplay命令用于显示物理卷的属性。pvdisplay命令显示的物理卷信息包括:物理卷名称、所属的卷组、物理卷大小、PE大小、总PE数、可用PE数、已分配的PE数和UUID。
lvdisplay命令用于显示LVM逻辑卷空间大小、读写状态和快照信息等属性。如果省略"逻辑卷"参数,则lvdisplay命令显示所有的逻辑卷属性。否则,仅显示指定的逻辑卷属性。
pvscan命令会扫描系统中连接的所有硬盘,列出找到的物理卷列表。使用pvscan命令的-n选项可以显示硬盘中的不属于任何卷组的物理卷,这些物理卷是未被使用的。
lvscan命令用于扫描当前系统中存在的所有的LVM逻辑卷。使用lvscan指令可以发现系统中的所有逻辑卷,及其对应的设备文件。
lvcreate命令用于创建LVM的逻辑卷。逻辑卷是创建在卷组之上的。逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组"vg1000"上创建一个逻辑卷"lvol0",则此逻辑卷对应的设备文件为"/dev/vg1000/lvol0"。
pvcreate命令用于将物理硬盘分区初始化为物理卷,以便LVM使用。语法:pvcreate(选项)(参数)。选项:-f:强制创建物理卷,不需要用户确认。
vgconvert命令用于转换指定LVM卷组的元数据格式,通常将“LVM1”格式的卷组转换为“LVM2”格式。转换卷组元数据前必须保证卷组处于非活动状态,否则无法完成转换操作。
blockdev命令在命令调用“ioxtls”函数,以实现对设备的控制。语法:blockdev(选项)(参数)。选项:-V:打印版本号并退出;-q:安静模式。
mkswap命令用于在一个文件或者设备上建立交换分区。在建立完之后要使用sawpon命令开始使用这个交换区。最后一个选择性参数指定了交换区的大小,但是这个参数是为了向后兼容设置的,没有使用的必要。
vgchange命令用于修改卷组的属性,经常被用来设置卷组是处于活动状态或非活动状态。处于活动状态的卷组无法被删除,必须使用vgchange命令将卷组设置为非活动状态后才能删除。
mknod命令用于创建Linux中的字符设备文件和块设备文件。语法:mknod(选项)(参数)。选项:-Z:设置安全的上下文。
mkisofs命令用来将指定的目录与文件做成ISO 9660格式的映像文件,以供刻录光盘。语法:mkisofs(选项)(参数)。选项:-a或--all:mkisofs通常不处理备份文件。
mkinitrd命令建立要载入ramdisk的映像文件,以供Linux开机时载入ramdisk。这个是重新封包核心的命令。
vgreduce命令通过删除LVM卷组中的物理卷来减少卷组容量。不能删除LVM卷组中剩余的最后一个物理卷。语法:vgreduce(选项)(参数)。
hdparm命令提供了一个命令行的接口用于读取和设置IDE或SCSI硬盘参数。语法:hdparm(选项)(参数)。选项:-a<快取分区>:设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定。
vgextend命令用于动态扩展LVM卷组,它通过向卷组中添加物理卷来增加卷组的容量。LVM卷组中的物理卷可以在使用vgcreate命令创建卷组时添加,也可以使用vgextend命令动态的添加。
partprobe命令用于重读分区表,当出现删除文件后,出现仍然占用空间。可以partprobe在不重启的情况下重读分区。
vgscan命令查找系统中存在的LVM卷组,并显示找到的卷组列表。vgscan命令仅显示找到的卷组的名称和LVM元数据类型,要得到卷组的详细信息需要使用vgdisplay命令。
vgcreate命令用于创建LVM卷组。卷组(Volume Group)将多个物理卷组织成一个整体,屏蔽了底层物理卷细节。在卷组上创建逻辑卷时不用考虑具体的物理卷信息。
fdisk命令用于观察硬盘实体使用情况,也可对硬盘分区。它采用传统的问答式界面,而非类似DOS fdisk的cfdisk互动式操作界面,因此在使用上较为不便,但功能却丝毫不打折扣。
badblock命令用于查找磁盘中损坏的区块。硬盘是一个损耗设备,当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后,如果不及时更换或进行技术处理,坏道就会越来越多。
vgdisplay命令用于显示LVM卷组的信息。如果不指定"卷组"参数,则分别显示所有卷组的属性。语法:vgdisplay(选项)(参数)。
mkbootdisk命令用来为当前运行的系统创建能够单独使用的系统引导软盘,以便在系统出现故障时能够启动操作进行适当的修复工作。
grub命令是多重引导程序grub的命令行shell工具。这里要指出的是Grub 2,它是新一代的Grub,在Grub 2里实现了Grub没有的一些功能。语法:grub(选项)。
convertquota命令用于将老的磁盘额数据文件(“quota.user”和“quota.group”)转换为新格式的文件(“quota.user”和“quota.group”)。
lilo命令用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理开机的功能。单独执行lilo指令,它会读取/etc/lilo.conf配置文件,然后根据其内容安装lilo。
df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
parted命令是由GNU组织开发的一款功能强大的磁盘分区和分区大小调整工具,与fdisk不同,它支持调整分区的大小。作为一种设计用于Linux的工具,它没有构建成处理与fdisk关联的多种分区类型。
speedtest-cli是一个使用python编写的命令行脚本,通过调用speedtest.net测试上下行的接口来完成速度测试,最后我会测试运维生存时间所在服务器的外网速度。
在ip报文的首部和ICMP报文的首部都可以放入时间戳数据。clockdiff程序正是使用时间戳来测算目的主机和本地主机的系统时间差。
ntpdate命令是用来设置本地日期与时间。它从指定的每个服务器获得了一些样本,并应用标准 NTP 时钟过滤器和选择算法来选择最好的样本。
vdfuse命令是VirtualBox软件挂载VDI分区文件的一个工具,VirtualBox是一款能创建虚拟机的开源软件,vdi是它的默认磁盘格式。
ngrep命令是grep命令的网络版,他力求更多的grep特征,用于搜寻指定的数据包。正由于安装ngrep需用到libpcap库,所以支持大量的操作系统和网络协议。
有时候在写Shell脚本的时候需要一些临时存储数据的才做,最适合存储临时文件数据的位置就是/tmp,因为该目录中所有的内容在系统重启后就会被清空。下面是两种方法为临时数据生成标准的文件名。
xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令参数。
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。