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

相关推荐

  • 网络管理基础

    什么是网络?    在计算机领域中,网络是信息传输,接受,共享的虚拟平台,通过它把各个点,面体的信息联系到一起, 从而实现这些资源的共享。 网路物理组件     终端:可发送和接受数据的,如计算机。移动设备,打印机,服务器….    互联设备:互联…

    Linux干货 2016-09-06
  • 磁盘管理的相关知识

    1.设备文件:关联至一个设备驱动程序,进而与之相对应设备文件通信 2.设备号码:     主设备号:major number 标识文件类型     次设别号:minor number  同一类型下不同设备 3磁盘组成结构: .    &nb…

    Linux干货 2016-08-30
  • 网络yum源的配置

    1.准备: 光盘 包 元数据 2.网络服务http(s)  ftp 查看是否安装  which  vsftp;  ls  /misc/cd/Packages | grep vsftpd 安装  rpm  -ivh  /misc/cd/Packages/vsftpd… …

    2017-06-13
  • 磁盘分区相关知识

    磁盘分区相关知识 使用磁盘分区的过程设备识别→设备分区→创建文件系统→标记文件系统→在/etc/fstab文件中创建条目→挂载新的文件系统 分区不是必须的,但是分区是必要的:优化I/O性能实现磁盘空间配额限制提高修复速度隔离系统和程序安装多个OS采用不同文件系统 不重启激活新添加的磁盘:echo “- – -” > …

    Linux干货 2017-08-20
  • 5.20 TOMCAT

    需要安装JDK JAVA Development Kit //JAVA 2 SE 的接口    TOMCAT 的安装: yum 安装 #yum install -y java-1.8.0-openjdk-devel 如下界面出现的话就是安装OK 注意:安装完成后,要配置JAVA_HOME环境变量,指向java的安装路径; OpenJDK: JAVA_HOME…

    2017-07-09
  • 根DNS域名解析的实现

    一、实现从根,com,rj.com 模拟互联网的DNS架构 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。 接下来就一起开始搭建吧 首先,我们需要计划好实验环境,包括实验的步骤思路 1)实验环境(最好是画图展示,能使思路清…

    2015-02-10