N22-​Linux系统的基础命令

                                 Linux系统的基础命令


命令的语法通用格式:# COMMAND OPTIONS  ARGUMENTS

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

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

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

普通命令存放位置:/bin,/usr/sbin,/usr/local/bi

管理命令存放位置:/sbin,/usr/sbin,/usr/local/sbin

共享库: /lib,/lib64,/usr/lib,/usr/li64,/usr/local/lib,/usr/local/lib64

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

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

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

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

# file /bin/ls 

命令分为两类:

   由shell程序的自带的命令:内置命令(builtin)

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

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

环境变量:

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

[root@localhost /]# echo $PATH

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

查找次序:自作向右 

如果是shell内部命令,则不会有这些命令存在的位置,是shell程序自带的

查看命令类型:type+命令

 

OPTIONS:

   指定命令的运行特性;

   选项有两种表现形式:

        短选项:-C  eg. -l , -d 

            注意:有些命令的选项没有-;

            如果同一命令使用多个短选项,多数可合并:

                [root@localhost /]# ls -l -d /var 

                        drwxr-xr-x. 19 root root 4096 8月  10 15:18 /var

                [root@localhost /]# ls -ld /var

                        drwxr-xr-x. 19 root root 4096 8月  10 15:18 /var

       长选项:–word, eg.–help,–human-readable

            注意:长选项可以带参数;

            注意:有些选项可以带参数,此称为选项参数;

ARGUMENTS

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

  注意:不同的命令参数;有些命令可以同时带多个参数,多个之间以空白字符分割

基础命令介绍

which命令:

which – shows the full path of (shell) commands.  显示命令的完整路径

which [options] [–] programname […]  

–skip-alias:不显示别名 

whereis命令:

locate the binary, source, and manual page files for a command

定位二进制、来源、帮助手册文件的命令

-b:只显示二进制格式

-m:只显示帮助手册

who命令:

查看登录当前系统的相关信息

-b: 显示上一次系统是什么时候启动的

-r: 显示运行级别

    

w命令:

增强版的who命令,用于显示谁登陆了系统以及在做什么

bash的基础特性:

命令历史:shell进程会对其会话中保存此前用户提交执行过的命令

# history

定制history的功能:可通过环境变量实现:

HISTSIZE:shell进程可保留的命令历史的条数

eg.[root@bogon ~]# echo $HISTSIZE

         1000

HISTFILE:持久保留命令历史的文件

 每个用户下都有一个隐藏文件.bash_history 

 文件中不会有用户刚刚操作过的命令,因为这个文件是用户登出后内存写入这个文件的

HISTFILESIZE:命令历史的文件的大小

eg  [root@bogon ~]# echo $HISTFILESIZE

         1000

注意:比如命令历史文件中有800条记录,当系统开机时自动加载到内存中,开机后用户操作300条命令

      所以用history命令操作后看到的历史命令的条数可以使1100条

      比如命令历史文件中有300条记录,本次操作800条命令,用户登出后本次操作的记录保存到历史文               件中那么历史文件的大小还是1000条,最前面的100条记录溢出

  

-c:清空命令历史(删除内存中的记录)

-d+偏移量:删除指定位置的历史记录

-w:将当前历史写入到历史文件中并追加到历史列表中(内存–>文件)

-r:读取历史文件并将内容追加到历史列表中(文件–>内存)

history + #:显示最近的#条命令

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

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

!!:再一次执行上一条命令

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

注意:命令的重复执行有时候需要依赖于幂等性

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

Esc,. 

!$ 

eg:[root@bogon ~]# file !$

file /etc/sysconfig/network-scripts/ifcfg-eno16777736

/etc/sysconfig/network-scripts/ifcfg-eno16777736: ASCII text

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

                环境变量:HISTCONTROL

                   [root@bogon ~]# echo $HISTCONTROL

ignoredups —-忽略连续且相同的命令历史记录

                其取值有三个:

                    ignoredups:忽略重复的命令

                    ignorespace: 忽略以空格开头的的命令

                    ignorebouth:以上两者同时生效               

       修改变量的值:

     NAME='value'—> 仅对当前shell有效

目录管理类的命令:

 mkdir:创建目录

            mkdir [OPTION]… DIRECTORY…

            注意:路径基名方为命令的作用对象;基名之前的路径必须得存在

            -p: 自动按需创建父目录

            -v:显示详细的创建过程

            -m + MODE:直接给定权限

rmdir: 删除空目录–>仅用于删除空目录

            -p:删除某空目录后,如果父目录为空,则一并删除之

    -v:显示过程

tree命令:

  -L :指定要显示的目录层级

more命令:

more FILE

    特点:翻屏至文件尾部后自动退出

less命令:

less FIEL

head命令:

查看文件的前N行

head [options] FILE

 -n

-n number

tail命令:

 查看文件的后N行

tail [options] FILE

-n

-n number

-f:查看文件尾部内容结束后不退出,跟随显示新增的行。

 

stat命令:

显示文件或文件系统的状态

eg.[root@bogon ~]# stat /tmp/yum.log 

文件:"/tmp/yum.log"

大小:0         块:0          IO 块:4096   普通空文件

设备:fd00h/64768d Inode:134         硬链接:1

权限:(0600/-rw——-)  Uid:(    0/    root)   Gid:(    0/    root)

环境:system_u:object_r:initrc_tmp_t:s0

最近访问:2016-08-10 14:41:23.814002701 +0800

最近更改:2016-08-10 14:41:23.814002701 +0800

最近改动:2016-08-10 14:41:23.814002701 +0800

创建时间:-

文件:都有两类数据

元数据:metadata–>描述属性的信息

数据:data      –>数据本身的信息

  

时间戳:

     最近访问(access time):2016-08-13 16:25:44.156843879 +0800

     最近更改(modify time):2016-08-10 14:41:23.814002701 +0800

     最近改动(change time):2016-08-10 14:41:23.814002701 +0800

        

touch命令:

     修改文件的时间戳

     -c:指定的文件路径不存在时不予创建

     -a:仅修改access time

     -m:仅修改modify time

     -t STAMP :修改指定的时间

[[CC]YY]MMDDhhmm[.ss]

cp命令:文件复制

    源文件:目标文件  

       单源复制:cp [OPTION]… [-T] SOURCE DEST

       多源复制:cp [OPTION]… SOURCE… DIRECTORY

       多源复制:cp [OPTION]… -t DIRECTORY SOURCE…

  

       单源复制:cp [OPTION]… [-T] SOURCE DEST

     如果 DEST不存在:

则先创建此文件,并复制源文件的数据流到 DEST中

     如果 DEST存在:

如果DEST是非目录文件:则覆盖目标文件

如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流

       多源复制:cp [OPTION]… SOURCE… DIRECTORY

                 cp [OPTION]… -t DIRECTORY SOURCE…

            如果DEST不存在:错误

            如果DEST存在:

                如果DEST是非目录文件:错误

                如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名

        

        常用选项:

            -i: 交互式复制,覆盖之前提醒用户确认            

            -f:强制覆盖目标文件

            -R/-r:递归复制目录:复制目录及目录中的内容

            -d:复制符号链接文件本身,而不复制它所连接的源文件

-a: -dR  –preserve=all ,archive,用于实现归档(做备份);

–preserv=

        mode:权限

pwnership:属主和属组

tomestamps;时间戳

context:安全标签

xattr:扩展属性

links:符号链接

   all:上述所有属性

       

mv命令:

           mv [OPTION]… [-T] SOURCE DEST

  mv [OPTION]… SOURCE… DIRECTORY

  mv [OPTION]… -t DIRECTORY SOURCE…

  

  常用选项:

     -i: 交互式

      -f:强制覆盖目标文件

    

rm命令:删除文件        

 常用选项:

   -i:交互式

   -f:强制执行

   -r:递归删除目录

     注意:所有不用的文件建议不要直接删除,而是移动至某个专用目录(回收站)

    

    变量:

        命名的内存空间

             变量类型:

  浮点型

  数值型

        精确数值

近似数值

    变量类型决定了存储格式、数据范围、参与运算等

原创文章,作者:N22-长春-石头,如若转载,请注明出处:http://www.178linux.com/35347

(0)
N22-长春-石头N22-长春-石头
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • 网络管理

    常见的网络物理组件:路由器、交换机、PC机 网络的特性:速度、成本、安全性、可用性、可扩展性、可靠性、拓扑 拓扑结构:           物理拓扑:总线拓扑               &…

    Linux干货 2017-05-09
  • ​从实验来了解grub

    实验一为grub设置密码 先看一看grub是怎么样的 grub有两个版本 grub: GRand Unified Bootloader grub 0.x: grub legacy grub 1.x: grub2  Note:grub 1.x是完全重写的只不过是保留grub 0.x的工作机制。 2.利用grub自带命令生成密码grub-md5-cry…

    Linux干货 2016-06-09
  • DNS基础及使用BIND搭建域名服务器

        本文主线是DNS服务相关概念和服务器搭建,在此之前了解一下域名这个东东很有其必要性,因为DNS服务就是应域名而生的。那么域名是什么哪?     域名     域名是用一串用点分开的字符串来表示的internet上的某一台或者一组计算机的名称,用于在数据传输时标识计算机的电子方位。举…

    Linux干货 2015-06-11
  • 计算机组成及功能简介

    计算机(computer)       当今它已经走进千家万户,应用在各个领域,没有用过计算机的朋友应该很少了吧?但是,你真正了解计算机是什么吗?(我也是刚刚了解的,(*^__^*)嘻嘻……)那么,接下来,让我们一起探究一下它的具体构造吧!       所谓的计算机就是…

    Linux干货 2016-10-25
  • 浅谈用户名和权限

        小编已经写了两篇博客了,却忘了自我介绍,咳咳咳(隆zhuang重qiang介zuo绍shi)一下:翠衣薄纱如花艳,柳眉凤眼俏佳人说的就是我!不扯了其实,小编拥有一个四口之家,那么小编今天就借家献佛给你们讲讲用户组和权限。     所属主(me):一般为文件的创建者,谁创建了该文件,就天然的成…

    Linux干货 2017-07-30
  • AWK——文本处理三剑客

    GNU awk ·文本处理三工具:grep,sed,awk          grep,egrep,fgrep:文本过滤工具:pattern          sed:行编辑器  &nbsp…

    Linux干货 2016-09-20