Linux系统上命令的使用格式

第一部分:Linux系统上命令的使用格式

命令的语法通用格式:

     COMMAND OPTIONS ARGUMENTS

    发起一个命令:请求内核将某个二进制程序运行为一个进程;

     程序 —-> 进程

     静态 —-> 动态 (有生命周期)

命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用库文件:共享库

多数系统程序文件都存放在/bin, /sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

     普通命令:/bin,/usr/bin,/usr/local/bin

     管理命令:/sbin,/usr/sbin,/usr/local/sbin

共享库:/lib,/lib64,/usr/lib,/usr/lib64……….

     32位库:/lib,/usr/lib,/usr/local/lib

     64位库:/lib64,/usr/lib64,/usr/local/lib64

并非所有的命令都有一个在某目录与之对应的可执行程序文件

命令必须遵循特定格式规范:exe,msi,ELF(Linux)

[root@localhost ~]# file /bin/ls  #查看文件内容类型

/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped

命令分为两类:

     由shell程序自带的命令:内置命令(built-in)

     独立的可执行程序文件,文件名即命令名:外部命令(可执行程序)

shell程序是独特的程序,负责解析用户提供的命令:

     环境变量:

          PATH:从哪些路径中查找用户键入的命令字符串所对应的命令文件

[root@localhost /]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

例如,从左向右开始,一个一个找ls命令;从左向右,因此顺序很重要;

PATH是针对外部命令而言的

SHELL自带的命令是不需要PATH的

那么如何区分命令类型?

type COMMAND

例如:

[root@localhost /]# type type

type 是 shell 内嵌

因此,type是内置命令

OPTIONS:指定命令的运行特性,或者调整命令运行时所要执行的代码和实现的功能

选项有两种表现形式:

     长选项:–character,长选项一般不能合并

     短选项:-C等;同时使用多个短选项,一般可以合并,例如 ls -ld = ls -l -d

注意,有些选项可以自带参数,选项参数,而不是命令参数

ARGUMENTS:命令的参数

     命令的作用对象:命令对什么生效

例如:ls -l -d /var /etc

第二部分:一些常见命令

#1 ifconfig – 用于配置网卡

语法:

ifconfig [interface]
ifconfig interface [aftype] options | address …

参数:

up 启动指定网络设备/网卡。
down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。
arp 设置指定网卡是否支持ARP协议。
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
address 为网卡设置IPv4地址
实例:

<1> ifconfig  #用于查看网卡具体信息

<2> ifconfig eth0 up   #启动eth0网卡

        ifconfig eth0 down  #关闭eth0网卡;注意,ssh登录服务器操作要小心,关闭了就不能开启了,除非有多网卡

<3> ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255   #配置IP地址

<4> ifconfig eth0 arp  #启用ARP协议

        ifconfig eth0 -arp  #关闭ARP协议

#2 echo – 显示一段文字,一般起到提示的作用

参数&举例

-n:不自动进行换行操作

[root@localhost /]# echo -n 'hello world'

hello world[root@localhost /]#

-e:让转移符生效

[root@localhost /]# echo 'hello \nworld'

hello \nworld

[root@localhost /]# echo -e 'hello \nworld'   #注意-e的用法

hello

world

     \n:表示换行

STRING可以使用引号,单引号和双引号均可用

     单引号:强引用,变量引用不执行替换

          [root@localhost /]# echo '$SHELL'

          $SHELL

     双引号:弱引用,变量引用会被替换

          [root@localhost /]# echo "$SHELL"

          /bin/bash

#3 startx – startx – initialize an X session

用于打开图形化界面

#4 pwd – print working directory,显示当前路径

相关的环境变量:

     $PWD:当前工作目录

     $OLDPWD:上一次工作目录

#5 history – 显示命令历史

history 命令 – shell内嵌命令

定制history的功能,可以通过环境变量来实现

     HISTSIZE    #shell进程中history命令所保存的历史的条数

    HISTFILE     #持久保存命令历史的文件

          .bash_history    #保存在用户家目录中,存储了历史命令

     HISTFILESIZE   #命令历史文件的大小

命令用法:

history [-c] [-d 偏移量] [n]

或 history -anrw [文件名]

或 history -ps 参数 [参数…]

参数:

-c:清空命令历史(清空内存中的内容)

-d offset [n]:根据offset偏移量来删除指定条目,如果添加[n],表示从指定位置开始删除n个

-a:从内存到文件

-r:从文件读取命令历史至列表中  #如果history -c清空后,直接history -r,再history,可以读取文件中的内容

-w:保存到文件中

 n:显示最近的n条命令

调用命令历史列表中的命令:

!# 再次执行历史列表中的第#条命令

!!  再次执行上一条命令

!STRING    再次执行历史列表中最近一个以STRING开头的命令

     注意,命令的重复执行需要依赖于幂等性(可重复多次执行,例如删除一个文件后,不能再次删除相同的文件)

调用上一条命令的最后一个参数:

esc.    #按下esc,松开后再按.

!$     

控制命令历史记录的方式:

     环境变量:HISTCONTROL

          ignoredups:忽略重复的命令

          ignorespace:忽略以空白字符开头的命令 

          ignoreboth:

#6 shutdown/poweroff/reboot

关机或重启命令:shutdown

shutdown 

     -r 重启

     -P 关机

     -c 取消操作

     -h 关机

TIME:

     now

     hh:mm

     +m

          +0 = now

WALL

     系统本身有wall指令,广播消息

shutdown -h now   #马上关机

shutdown -r +5      #5分钟后关机,消息会广播给所有用户

shutdown -c           #取消关机操作

#7 hwclock = clock

clock:显示硬件时钟

hwclock:显示硬件时钟 — clock和hwclock是同一个指令

参数

     -s, –hctosys   #以硬件为准,将系统时钟调整到与硬件时钟一致

     -w, –systohc  #以系统为准

语法:

hwclock [function] [option…]

具体用法:

[root@localhost ~]# hwclock   #显示硬件时间

2016年08月13日 星期六 03时54分48秒  -0.742017 秒

#8 date

date

     显示时间 :date [OPTION]… [+FORMAT]

          FORMAT:显示格式

               %F

               %m

               %s:从1970年1月1日(unix元年)0点0分0秒到命令执行那一刻经过的秒数

     date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]

     设定日期时间

[root@localhost ~]# date 101008082013.08    月日小时分钟年.秒钟

2013年 10月 10日 星期四 08:08:08 CST

原创文章,作者:vincent_chen,如若转载,请注明出处:http://www.178linux.com/34088

(0)
vincent_chenvincent_chen
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • 0805课堂练习与作业

    练习1 1、找出ifconfig命令结果中本机的所有IPv4地址 2、查出分区空间使用率的最大百分比值 3、查出用户UID最大值的用户名、UID及shell类型 4、查出/tmp的权限,以数字方式显示 5、统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序 练习2 1、显示/proc/meminfo文件中以大小s开头的行;(要求:使 用两种方式)…

    Linux干货 2016-08-07
  • 文本处理工具

    1.cat 主要三大功能: 1.一次显示整个文件:cat filename 2.从键盘创建一个文件:cat > filename << EOF ….>EOF (只能创建新文件,不能编辑已有文件);cat向已经存在的文件追加内容:cat >> file <<EOF…>EOF 3.将几…

    2017-07-29
  • 第二周 Linux基础命令入门(二)

    1、描述Linux上的文件管理类命令并详解。 2、描述Bash的工作特性。 3、描述文件的元数据信息详解。 4、描述命令别名的使用。 5、详解文件通配符。

    Linux干货 2017-12-18
  • Linux的文件压缩、解压之tar的使用

    文件的压缩   一、压缩、解压缩及归档工具 压缩 解压 后缀(压缩后) file-roller 图形操作界面上的使用(略) compress 解压一:uncompress 或compress -d (注:使用上面的解压命令,实际上是在屏幕上打印解压的文件信息,并不是真正上解压到文件,所以需要在命令后面加上“重定向到指定的文件中”,方可完成解压。如:…

    Linux干货 2016-08-18
  • N25_第一周_yecho

    ???

    Linux干货 2016-12-01
  • awk灵活运用

    awk:报告生成器,格式化文本输出        有多种版本:New awk (nawk ),GNU awk(gawk)gawk:模式扫描和处理语言基本用法:awk [options] ‘program’ var=value file…awk [options] -f progr…

    Linux干货 2017-04-08