码迷,mamicode.com
首页 > 系统相关 > 详细

LINUX 系统的一些基础命令

时间:2021-06-11 18:52:59      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:软链接文件   cat   光驱   换工作   处理对象   修改   and   更新   提醒   

LINUX 系统的一些入门基础

   Shell

  • Linux系统中运行的一种特殊程序
  • 在用户和内核之间充当“翻译官”
  • 用户登录Linux系统时自动加载一个shell程序
  • Bash是Linux系统中默认使用的shell程序----文件位于/bin/bash

   Linux命令的分类

          内部命令与外部命令的区别

内部命令 外部命令

集成于Shell解释器程序内部的一些特殊指令,被称为内嵌指令

Linux系统中能够完成特定功能的脚本文件或二进制程序
属于Shell的一部分 属于Shell解释器程序之外的命令
没有单独对应的系统文件 每个外部命令对应了系统中的一个文件
自动载入内存,可以直接使用 必须知道其对应的文件位置,由Shell加载后才能执行

 

 

 

 

 

 

 

 

 

     查看内部命令    

         help  命令                  enable 命令                     type 命令

     禁用内部命令

        enable -n  命令

   Linux命令行的格式

    通用的命令行使用格式

           命令字                [选项]                  [参数]                 

     命令字------ 就是要进行的操作    (是整条命令中最关键的一部分,是唯一确定的一条命令)

     选项 ---------就是功能           (短格式选项:使用“-”+字母         长格式选项:使用“--”+单词)

     参数 ---------命令要执行的对象 (命令字的处理对象,可以是文件名、目录名或用户名等内容,个数可以是零到多个)

    编辑LInux命令行的快捷键

  • Tab :自动补齐
  • 反斜杠“\”:强制换货   (看上去换行了 但是实际上还是在一行 方便长代码的观看)
  • Ctrl+U:清空至行首
  • Ctrl+K:清空至行尾
  • Ctrl+L:清屏
  • Ctrl+C:取消本次命令编辑
  • Ctrl+a:切换到行首
  • Ctrl+e:切换到行尾

    获得命令帮助的方法

  • 内部命令 help        查看Shell内部命令的帮助信息
  • 命令 --help             适用于大多数Linux外部命令
  • man 命令               使用man手册 (“/”键查找内容 N键向上找,n向下找)

         

Linux的一些基础命令

切换用户

           su 用户名 #切换后所在目录不变
           su - 用户名 #切换后所在目录变成用户家目录

查看当前主机的完整名称

           hostname

临时设置主机名

            hostname 主机名

永久设置主机名

             hostnamectl set-hostname 主机名
             或
             vi /etc/hostname(设置完后需重启系统才生效)
             按i键先删除旧主机名,再输入新主机名(只有第一行有效)
             按ESC键,再按SHIFT + “:” 组合键,输入 wq ,再按回车键退出

查看当前系统版本信息

             cat /etc/redhat-release
             或
             cat /etc/*release

查看当前内核版本

             uname -r

设置别名 -alias

通过别名机制简化常用的、比较长的命令

alias 命令别名=‘命令’

列如   alias vi ens33=‘vi /etc/sysconfig/network-scripts/ifcfg-ens33’

   用户输入vi ens33 就起到了修改enss33网卡的作用

临时修改网卡IP

             ifconfig ens33       IP和子网掩码

永久修改网卡IP

            vi /etc/sysconfig/network-scripts/ifcfg-ens33
     TYPE=Ethernet                            #设置网卡类型,“Ethernet”表示以太网
     DEVICE=ens33                           #设置网卡的名称
     ONBOOT=yes                             #设置网卡是否在 Linux 操作系统启动时激活
     BOOTPROTO=static                   #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址
     IPADDR=192.168.80.3                #设置网卡的 IP 地址
     NETMASK=255.255.255.0          #设置网卡的子网掩码
     GATEWAY=192.168.80.2            #设置网卡的默认网关地址
     DNS1=192.168.80.2                    #设置DNS服务器的 IP 地址

重启网卡

    systemctl restart network                       #重启所有的网卡
    ifdown ens33 ; ifup ens33
    ifdown ens33                                          #关闭某个网卡
    ifup ens33                                              #启动某个网卡

    ifconfig ens33 down                               #临时禁用某个网卡
    ifconfig ens33 up                                    #重新激活某个网卡(不会更新IP地址)

查看网卡地址

     ifconfig
     或
     ip a

添加静态路由条目

    临时添加路由(重启network服务失效)

方法一:
    route add -net 192.168.3.0/24 gw 192.168.8.2 [dev ens33]
     -net:指定目标网段的地址
    gw:指定下一跳路由器的 IP 地址
    dev: 为路由指定的输出接口

方法二:

   ip route add 192.168.3.0/24 via 192.168.8.2 [dev ens33]

     查看路由表条目
     route -n

     删除静态路由条目
     route del -net 192.168.3.0/24

测试网络连接

    ping
    traceroute (静态跟踪)
    mtr (动态跟踪)


重启系统

    reboot
    init 6
    shutdown -r now     (now是现在执行换成数字是以分钟为单位的)

关机

    poweroff
    init 0
    shutdown -h now    (now是现在执行换成数字是以分钟为单位的)

    shutdown -c

 

查看及切换目录(pwd、cdlsdu

显示用当前所在的工作目录位置

    pwd

切换工作目录 -cd

    cd 目标位置               切换到目标位置

    cd ~                           切换到当前用户的宿主目录

    cd                              切换到当前用户的宿主目录

    cd -                            切换到上一次执行cd命令之前所在的目录

  •    绝对路径 :起点从根目录开始
  •    相对路径 :以当前目录位置为起点
    以“.”开头                   表示以当前的工作目录为起点
    以“..”开头                  表示当前目录的上一级目录作为起点
    以“~用户名”开头       表示以指定用户的宿主目录为起点
    以“~”开头                  表示以当前用户的宿主目录作为起点

 

列表显示目录内容   -ls 

  显示目录中内容,包括子目录和文件相关属性信息

   常用组合

  •  -l:以长格式(long)显示文件和目录的列表,包括权限、大小、最后更新时间等详细信息。“ll”命令和 ls -l 相同
  • -a:显示所有(all)子目录和文件的信息,包括名称以“.”开头的影藏目录和影藏的文件。
  • -A:与-a 选项的作用基本相同,但不会显示影藏的目录 “.” “..”
  • -d:显示目录本身的属性,而不是显示目录中的内容。
  • -h:人性化的显示目录或文件的大小,原来默认的大小单位是字节(B)-h后显示KB、MB、等。此选项和“-l”一起使用。
  • -R:以递归的方式显示指定目录及其子目录中的所有内容
  • -i: 显示文件和目录的inode号 

用“ls -l”命令查看某一个目录会得到一个7个字段的列表

-rwxrwxr-- 1 root root 762 07-29 18:19 exit

第1字段:文件属性字
第一个字符代表文件的类型:
“-"表示该文件是一个普通文件
"d"表示该文件是一个目录
"1"表示该文件是一个软链接文件。类似于windows下的快捷方式

第1字符的后面9个字母表示该文件或目录的权限位:
r表示读(查看、下载) 、w表示写(添加、更改、删除、上传)、x表示执行(运行文件、切换目录)
其中前三个表示文件拥有者(属主)的权限,中间三个表示文件所属组拥有的权限,最后三个表示其他用户拥有的权限。

第2字段:文件硬链接数
如果一个文件不是目录,此时这一字段表示这个文件所具有的硬链接数
如果是一个目录,则第2字段表示该目录所含子目录的个数。
如果新建一个空目录,这个目录的第二字段就是2,表示该目录下有两个子目录。
一个目录一定会有两个隐藏目录 , 点“.” 和 点点“..”

第三个字段:文件/目录拥有者
第四个字段:文件/目录拥有者所在的组

第五字段:文件所占用的空间(默认以字节为单位)
如果是一个目录,则表示该目录(名)的大小,而不是目录及它下面的文件的总大小。
Linux系统中一切皆文件,因此目录也是一种文件。
LInux中文件名和文件数据分开存放
一个字节占8位。默认大小字节
注,仅代表目录的大小,而不是目录占用的总磁盘空间

第六字段:文件/目录最近访问或修改时间

第七字段:文件名
如果是一个符号链接(软链接文件),那么会有一个“→”箭头符号,后面跟一个它指向的文件名

统计目录及文件空间占用情况 -du

统计指定目录或文件所占用磁盘空间的大小

du    【选项】 【文件或目录】

常用选项

  • -a    统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
  • -h    以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果
  • -s    只统计所占用空间总的大小,而不是统计每个子目录、文件的大小
  • --max-depth=n     统计所有小于等于第n层的目录的总大小

创建目录和文件(mkdir、touch、ln)

 创建新的空目录

  mkdir 【选项】目录位置及名称

  mkdir -p /aa/bb/cc            一次性创建嵌套的多层目录

创建空文件

  touch 

  • 更新文件的时间标记
  • 经常用于创建多个新的文件   

  touch aa.txt bb.txt    创建aa.txt bb.txt   也可以合成  touch {aa,bb}.txt

创建链接文件

  为文件或目录建立链接文件,类似于Windows系统的快捷方式

     链接文件类型

  • 软链接(又称符号链接)   ln -s      源文件或目录 链接文件或目标位置          可以创建文件目录   (软链接的源文件最好带绝对路径)
  • 硬链接                                ln          源文件或目录 链接文件或目标位置          只适合文件的创建  (同根生 修改硬链接里面的内容 就是在修改源文件的内容)

技术图片

 

 

 在Linux中,文件名和文件数据是分开存储的

    提示

  • 在Linux中,只有文件的硬链接数=0 才会被删除
  • 使用ls -l 可以查看一个文件的硬链接数量
  • 在日常工作中,几乎不会建立文件的硬链接 

 

复制、删除、移动目录和文件(cp、rm、mv

将需要复制的文件或目录 重建一份,并保存为新的文件或目录

复制文件或目录

     cp     [选项] 源文件或目录 目标文件或目录      

常用选项

 

  • -f:覆盖目标同名文件或目录时不进行提醒,直接强制复制
  • -i:覆盖目标同名文件或目录时提醒用户确认
  • -p:复制时保持源文件的权限、属主及时间标记等属性不变
  • -r:复制目录时必须使用次选项,表示递归复制所有文件及子目录

:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在

删除文件或目录

    rm [选项] 要删除的文件或目录

常用选项

  • -f:删除文件或目录时不进行提醒,直接强制删除
  •  i:删除文件或目录时进行提醒用户确认(y表示删除,n表示不删除)
  • -r:删除目录时必须使用此选项,表示递归删除整个目录  (谨慎使用

 : 不要直接删除系统中已有的目录或配置文件,以免出现意外故障

         删除目录下文件时最好先切换到目录下再执行  rm -rf  命令

将指定的文件或目录转移位置   

    mv   [选项] 源文件或目录  目标文件或目录

     如果目标位置与源位置相同,则相当于执行重命名操作

      mv命令只能对单个文件重命名, 可以使用rename命令批量修改文件名

          rename  原名字 新名字 目标文件

查找目录和文件(which、find)

搜索范围由环境变量PATH决定(echo $PATH)

    which 命令或程序名                                默认当找到第一个目标后不再继续查找  (从左原则)

    which -a                                                  在所有搜索路径中查找

    find [查找范围]  [查找条件表达式]

    find -a          表示而且(and)

    find -o          表示或者  (or)

  常用查找条件类型

  •  -name  按名称查找            根据目标文件的名称进行查找,允许使用“*”和“?”通配符
  •  -size     按文件大小查找    一般使用“+”“-”号设置超过或小于指定的大小作为查找条件  (常用的容量单位包括kB、MB、GB)
  •  -user    根据文件是否属于目标用户进行查找
  •  -type    根据文件的类型进行查找
    普通文件        (f)
    目录               (d)
    块设备文件    (b):成块读取数据的设备(硬盘,内存,光驱)
    字符设备文件 (c):按单个字符读取数据的设备 (键盘、鼠标)

find 的exec用法

        -exec 参数后面跟着Linux命令,以反斜杠   “\”   加  分号  “;”  为结束标志,

        {} 代表了前面find查找出来的文件名

        find命令匹配到了当前目录下的所有普通文件,并在-exec 选项中使用ls-l命令将他们列出

           find ./-type f -exec ls -l {} \; 

 

LINUX 系统的一些基础命令

标签:软链接文件   cat   光驱   换工作   处理对象   修改   and   更新   提醒   

原文地址:https://www.cnblogs.com/zhouruan/p/14872643.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!