Linux学习(二)指令学习

指令学习

      • 指令格式
      • 基础指令
        • ls指令(list)
        • pwd指令
        • cd指令
        • mkdir指令
        • touch 指令
        • cp指令
        • mv指令
        • rm指令
        • 输出重定向
        • cat指令
      • 进阶指令
        • df指令
        • free指令
        • head指令
        • tail指令
        • less指令
        • wc指令
        • data指令 (**重要!)
        • cal指令
        • clear/ctrl + L指令
        • 管道(重要!!)
      • 高级指令
        • hostname指令
        • id指令
        • whoammi指令
        • ps - ef指令(重要)
        • top指令(重要)
        • du - sh指令
        • find指令
        • service指令(重点)
        • kill指令(重点)
        • ifconfig指令(重要)
        • reboot指令
        • shutdown指令
        • uptime指令
        • uname指令
        • netstat -tnlp指令
        • man指令
      • linux命令大全:man.linuxde.net

指令格式

#指令主题 [选项][操作对象]

选项和操作系统可省略;一个指令可以包含多个选项;操作对象也可以是多个;

基础指令

ls指令(list)

  • 用法1:ls
    列出该文件下的所有文件和文件夹的名称
  • 用法2:ls 路径
    列出指定路径下的所有文件和文件夹的名称

关于路径:

  • 路径可以分为两类:相对路径、绝对路径;
  • 相对路径:有一个参照物(一般就是当前的工作路径),从这个路径开始;
        ~~~     相对路径的写法:主要有两种写法 —— "./ " 表示当前目录下 "…/"表示上一级目录下
  • 绝对路径:不需要参照物,从根“/”开始寻找对应路径;

  • 用法3:ls 选项 路径
    含义:在列出的指定路径下的文件/文件名的名称,并以指定的格式进行显示。
    常见语法:
    ls -l 路径:表示以详细的列表显示,除了名称外还有其它信息
    ls -la 路径:表示以详细的列表显示,包括了隐藏文件

    Linux学习(二)指令学习_第1张图片
  • 第一部分:指文件和文件夹的权限;该部分的第一列代表文件的类型(-:该行文档类型为文件,d:代表为文件夹
  • 第三部分(如root root):代表权限
  • 第四部分:代表文件大小
    Linux学习(二)指令学习_第2张图片
  • linux中隐藏文件用 . 开头
  • 用法4:#ls -lh 路径
    含义:列出指定路径下的所有文件/文件夹的名称,以列表的形式并且在显示文档大小的时候以可读性较高的形式显示
    Linux学习(二)指令学习_第3张图片
    注意:显示结果的颜色代表了不同的涵义;蓝色代表文件夹,黑色代表文件,绿色代表拥有了所有权限(可读可写)

pwd指令

  • 打印当前工作目录,并且是绝对路径

cd指令

  • 作用:用于切换到指定的路径中
  • 语法: cd 路径
  • 路径可以是绝对路径,也可以是相对路径
  • 案例:
    1)cd ../ 返回上一级
    2)cd ~ 返回当前用户的家目录
    在这里插入图片描述

mkdir指令

  • 作用:创建目录
  • 语法1:# mkdir 路径/文件夹名字
    若不写路径,则代表创建在当前目录下;路径可以为相对路径或者绝对路径
  • 例子:
# mkdir Myfolder 				  //当前目录下创建Myfolder文件夹
# mkdir  /root/Myfolder  	 	 //在root文件夹下创建文件夹
# mkdir ./linux/Myfolder		//在当前目录下的linux文件夹下创建文件夹Myfolder
  • 语法2:# mkdir -p 路径/文件夹名1/文件夹名2
    作用:实现多层文件夹的创建;
    文件夹1可以不存在,执行该命令时会自动创建这个文件夹;
  • 语法3: # mkdir 文件夹名1 文件夹名2 文件夹名3
    作用:一次性创建多个文件夹

touch 指令

  • 作用:创建文件
  • 语法:# touch path/file_name路径可以省略(代表当前路径下)
  • 案例1:# touch linux.txt 在当前目录下创建一个linux.txt文件
    案例2:# touch linux1.txt linux2.txt 在当前目录下,同时创建多个文件
    案例3:# touch /home/linux123/linux.txt 在home文件夹下的linux123文件夹中创建linux.txt文件

cp指令

  • 作用:复制指令;将一个文件或文件夹复制到指定路径
  • 语法:# cp /path/file_name /path/file_name 第一个路径是源文件路径,后一个路径是目的路径;前后文件名字可以不同,但一般都写成相同的文件/文件夹名字
  • 案例1:# cp /home/linux123/linux.txt /home/linux.txt 将linux123下的linux.txt文件复制到home文件夹下
  • 案例2:# cp linux.txt ./yunwei/linux.txt 将当前目录下的linux.txt复制到当前目录的yunwei文件夹下
  • 复制文件夹需要使用 -r 命令,-r 代表递归复制
  • 案例:# cp -r ./yunwei/ /home/linux/yunwei 复制文件夹,文件夹后 / 可写可不写

mv指令

  • 作用:移动指令,移动文档(文件和文件夹)到指定路径
  • 语法:# mv /initial_path/file_name /final_path/file_name
  • 案例1:# mv ./linux/linux.txt /home/newpath/linux.txt
    注意,移动后原来位置不再有该文件,与Windows的剪切效果相同;
  • 案例2:# mv /home/linux123/yunwei/ /home/yunwei 移动文件夹,yunwei到home文件夹下;第二个路径中 yunwei 这个文件夹名可以省略(当未写文件夹名时,默认文件夹名字不变
  • 注意:在linux中重命名指令也是 mv语法与移动相同;只需保证前后两个路径相同,只有文档名不同就能实现改名;
    如: # mv /home/linux /home/ubuntu 将home文件夹下的linux文件夹改名未ubuntu

rm指令

  • 作用:移除或删除文档
  • 语法: # rm /path/fime_name
  • 案例1:# rm /home/linux 删除一个文件,会弹出一个询问 是否要删除该文件
    若不想确认,可以使用- f 来删除,则不会弹出询问# rm -f /home/linux
  • 案例2:# rm -r /home/yunwei 删除一个文件夹,同样用 -f 取消弹出询问
    形如:# rm -rf /home/yunwei
  • 案例3:# rm -rf a linux.txt 删除当前目录下的a文件夹和linux.txt文件 (删除多个)
  • 案例4:删除同一个目录下多个具有公共特性的文档,如删除以linux开头的文档
    形如:#rm -f linux* 删除当前目录下,开头未linux的所有文件;* 代表不管后面是什么,称为通配符,表示任意字符

输出重定向

  • 一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术
  • >覆盖输出,会覆盖掉原先的文件内容
    >>追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
  • 语法:# 正常执行的指令 > / >> 文件的路径 —— 若无相应的文件,则会创建这个文件并将结果保存在该文件中
  • 案例1:使用覆盖重定向,保存ls -la 的执行结果,保存到当前目录下的ls.txt
    在这里插入图片描述
  • 案例2:使用追加重定向,保存ls -la的执行结果到ls.txt中
  • 在这里插入图片描述
    案例2 的行数是案例1的两倍;

cat指令

  • 作用1: 直接打开一个文件;不需要手动退出;
  • 语法1:#cat 文件的路径
    Linux学习(二)指令学习_第4张图片
  • 作用2:cat还可以对文件进行合并
  • 语法2:# cat 待合并的文件路径1 待合并的文件路径2 …. 文件路径n > 合并之后的文件路径
  • 例如,合并3个文件,并存到一个文件中【配合输出重定向使用】
    在这里插入图片描述

进阶指令

df指令

  • 作用:查看磁盘的空间
  • 语法:# df -h -h表示以可读性较高的形式展示大小
    Linux学习(二)指令学习_第5张图片
  • filesystem: 相当于是分区
  • Mounted on: 代表挂载位置 —— 如 tempfs,若要访问其则访问dev/shm即可

free指令

  • 作用:查看内存使用情况
  • 语法:#free -m -m表示以mb为单位查看
    -在这里插入图片描述
  • 剩余的真实可以用的内存为1665mb = 1358 + 58 +253
  • Swap:用于临时内存,当系统真实内存不够用的时候可以临时使用磁盘空间来充当内存

head指令

  • 作用:查看一个文件的前n行,如果不指定n,则默认显示前10行
  • 语法:#head -n 文件路径 【n表示数字】

tail指令

  • 作用1:查看一个文件的未n行,如果n不指定默认显示后10行 —— 看尾
  • 语法:#tail -n 文件的路径 n同样表示数字

  • 作用2:可以通过tail指令来查看一个文件的动态变化内容变化的内容不能是用户手动增加的】 ——比如使用重定向来实现文件的动态变化
  • 语法:#tail -f 文件路径
  • 该命令一般用于查看系统的日志比较多

less指令

  • 作用:查看文件,以较少的内容进行输出,按下辅助功能键(数字+回车、空格键+上下方向键)查看更多
  • 语法:#less 需要查看的文件路径
    Linux学习(二)指令学习_第6张图片
  • 使用q来退出

wc指令

  • 作用:统计文件内容信息(包含行数、单词数、字节数
  • 语法:#wc -lwc 需要统计的文件路径
    -l:表示lines,行数
    -w:表示words,单词数 依照空格来判断单词数量
    -c:表示bytes,字节数
    Linux学习(二)指令学习_第7张图片

data指令 (**重要!)

  • 作用:表示操作时间日期(读取、设置)
  • 语法1:#date 输出的形式:2018年 3月 24日 星期六 15:54:28
  • 语法2:#date +%F (等价于#date “+%Y-%m-%d” ) 输出形式:2018-03-24
  • 语法3:#date “+%F %T” 引号表示让“年月日与时分秒”成为一个不可分割的整体 %F%T之间有空格
    等价操作#date “+%Y-%m-%d %H:%M:%S”
    输出的形式:2018-03-24 16:01:00
  • 语法4:获取之前或者之后的某个时间(备份#date -d “-1 day” “+%Y-%m-%d %H:%M:%S”
    符号的可选值:+(之后) 或者 - (之前) "-1 day"之前一天
    单位的可选值:day(天)、month(月份)、year(年)

  • %F:表示完整的年月日
  • %T:表示完整的时分秒
  • %Y:表示四位年份
  • %m:表示两位月份(带前导0)
  • %d:表示日期(带前导0)
  • %H:表示小时(带前导0)
  • %M:表示分钟(带前导0)
  • %S:表示秒数(带前导0)

cal指令

  • 作用:用来操作日历的
  • 语法1:#cal 等价于 #cal -1 直接输出当前月份的日历
  • 语法2:#cal -3 表示输出上一个月+本月+下个月的日历
  • 语法3:#cal -y 年份 表示输出某一个年份的日历
  • 语法4:#cal -m 日历从周一开始显示,而不是从周天开始

clear/ctrl + L指令

  • 作用:清除终端中已经存在的命令和结果(信息)
  • 语法:clear 或者快捷键:ctrl + L
  • 需要注意的是,该命令并不是真的清除了之前的信息,而是把之前的信息的隐藏到了最上面,通过滚动条继续查看以前的信息

管道(重要!!)

  • 管道符:| (竖线)
  • 作用:管道一般可以用于“过滤”,“特殊”,“扩展处理
  • 语法:管道不能单独使用,必须需要配合前面所讲的一些指令来一起使用,其作用主要是辅助作用
  • 过滤案例(100%使用):需要通过管道查询出根目录下包含“y”字母的文档名称
    #ls / | grep y
    针对上面这个命令说明:
    ①以管道作为分界线,前面的命令有个输出,该输出作为后面的输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入;
    ②grep指令:主要用于过滤

  • ②特殊用法案例:通过管道的操作方法来实现less的等价效果(了解)
    之前通过less查看一个文件,可以#less 路径
    现在通过管道还可以这么:#cat 路径|less
  • ③扩展处理:请使用学过的命令,来统计某个目录下的文档的总个数
    答:#ls / | wc -l

高级指令

hostname指令

  • 作用:操作服务器的主机名(读取、设置)
  • 语法1:#hostname 含义:表示输出完整的主机名
    语法2:#hostname -f 含义:表示输出当前主机名中的FQDN(全限定域名)
    在这里插入图片描述

id指令

  • 作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该指令如果不指定用户则默认当前用户
  • 语法1:#id 默认显示当前执行该命令的用户的基本信息
  • 语法2:#id 用户名 显示指定用户的基本信息
    Linux学习(二)指令学习_第8张图片
  • uid:用户id
  • gid:用户组id
  • groups:附加组id
  • 环境路径:执行某个命令,是在环境中去寻找是否存在该命令;存在则可执行,不存在(未找到)则无法识别该命令;
  • 验证上述信息是否正确?
    验证用户信息:通过文件/etc/passwd
    验证用户组信息:通过文件/etc/group

    Linux学习(二)指令学习_第9张图片

whoammi指令

  • 作用:“我是谁?”显示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名方便记录日志
  • 语法:#whoami

ps - ef指令(重要)

  • 作用:主要是查看服务器的进程信息

  • 选项含义:
    -e:等价于“-A”,表示列出全部的进程
    -f:显示全部的列(显示全字段)

  • 执行结果:
    Linux学习(二)指令学习_第10张图片

  • 列的含义:
    UID:该进程执行的用户id;
    PID:进程id;
    PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程(parent process ID);
    C:CPU的占用率,其形式是百分数;
    STIME:进行的启动时间;
    TTY:终端设备,发起该进程的设备识别符号,如果显示“?”则表示该进程并不是由终端设备发起;
    TIME:进程的执行时间;
    CMD:该进程的名称或者对应的路径

  • 案例:(100%使用的命令)在ps的结果中过滤出想要查看的进程状态:

  • #ps -ef|grep “进程名称”
    在这里插入图片描述

  • 再例如查看火狐浏览器的进程:
    在这里插入图片描述

top指令(重要)

  • 作用:查看服务器的进程占的资源(100%使用)

  • 语法:
    进入命令:#top (动态显示
    退出命令:按下q键

  • 输出的结果:
    Linux学习(二)指令学习_第11张图片
    表头含义:
    PID:进程id;
    USER:该进程对应的用户;
    PR:优先级;
    VIRT:虚拟内存
    RES:常驻内存;
    SHR:共享内存;
    计算一个进程实际使用的内存 = 常驻内存(RES)- 共享内存(SHR)
    S:表示进程的状态status(sleeping,其中S表示睡眠,R表示运行);
    %CPU:表示CPU的占用百分比;
    %MEM:表示内存的占用百分比;
    TIME+:执行的时间;
    COMMAND:进程的名称或者路径;

  • 在运行top的时候,可以按下方便的快捷键:
    M:表示将结果按照内存(MEM)从高到低进行降序排列;
    P:表示将结果按照CPU使用率从高到低进行降序排列;
    1:当服务器拥有多个cpu的时候可以使用“1”快捷键来切换是否展示显示各个cpu的详细信息;

du - sh指令

  • 作用:查看目录的真实大小

  • 语法:#du -sh 目录路径

  • 选项含义:
    -s:summaries,只显示汇总的大小
    -h:表示以高可读性的形式进行显示 —— 自动选择合适的单位

  • 案例:统计“/root/yunweihenniux”目录的实际大小
    在这里插入图片描述

find指令

  • 作用:用于查找文件(其参数有55个之多)

  • 语法:#find 路径范围 选项 选项的值

  • 选项:
    -name:按照文档名称进行搜索(支持模糊搜索
    -type:按照文档的类型进行搜索
    文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹

  • 案例:使用find来搜索httpd.conf
    在这里插入图片描述

  • 案例:搜索etc目录下所有的conf后缀文件
    Linux学习(二)指令学习_第12张图片

  • 案例:使用find来搜索/etc/sane.d/目录下所有的文件
    Linux学习(二)指令学习_第13张图片

  • 案例:使用find来搜索/etc/目录下所有的文件夹
    Linux学习(二)指令学习_第14张图片

service指令(重点)

  • 作用:用于控制一些软件的服务启动/停止/重启
  • 语法:#service 服务名 start/stop/restart
  • 例如:需要启动本机安装的Apache(网站服务器软件),其服务名httpd
    在这里插入图片描述
    通过ps命令来检查httpd服务是否启动:
    Linux学习(二)指令学习_第15张图片
    apache是29867的子进程;

kill指令(重点)

  • 作用:表示杀死进程 (当遇到僵尸进程或者出于某些原因需要关闭进程的时候)
  • 语法:#kill 进程PID (语法需要配合ps一起使用)
    Linux学习(二)指令学习_第16张图片
  • 与kill命令作用相似但是比kill更加好用的杀死进程的命令:killall
  • 语法:#killall 进程名称
  • 在这里插入图片描述

ifconfig指令(重要)

  • 作用:用于操作网卡相关的指令
  • 简单语法:#ifconfig (获取网卡信息)
    Linux学习(二)指令学习_第17张图片
    Eth0表示Linux中的一个网卡,eth0是其名称。Lo(loop,本地回还网卡,其ip地址一般都是127.0.0.1)也是一个网卡名称;
    Linux学习(二)指令学习_第18张图片
    注意:inet addr就是网卡的ip地址。

reboot指令

  • 作用:重新启动计算机
  • 语法1:#reboot 重启
  • 语法2:#reboot -w 模拟重启,但是不重启(只写关机与开机的日志信息)

shutdown指令

  • 作用:关机 (慎用)
  • 语法1:#shutdown -h now “关机提示” 或者 #shutdown -h 15:25 “关机提示
  • 案例:设置Linux系统关机时间在12:00
    Linux学习(二)指令学习_第19张图片
    如果想要取消关机计划的话,则可以按照以下方式去尝试:
    ①针对于centos7.x之前的版本:ctrl+c
    ②针对于centos7.x(包含)之后的版本:#shutdown -c
  • 除了shutdown关机以外,还有以下几个关机命令
    #init 0
    #halt
    #poweroff

uptime指令

  • 作用:输出计算机的持续在线时间(计算机从开机到现在运行的时间
    在这里插入图片描述

uname指令

  • 作用:获取计算机操作系统相关信息
  • 语法1:#uname 获取操作系统的类型
    语法2:#uname -a all,表示获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
    在这里插入图片描述

netstat -tnlp指令

  • 作用:查看网络连接状态
    Linux学习(二)指令学习_第20张图片
    选项说明:
    -t:表示只列出tcp协议的连接;
    -n:表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示;
    -l:表示过滤出“state(状态)”列中其值为LISTEN(监听)的连接;
    -p:表示显示发起连接的进程pid和进程名称;

man指令

  • 作用:manual,手册(包含了Linux中全部命令手册,英文)
  • 语法:#man 命令 (退出按下q键)

linux命令大全:man.linuxde.net

你可能感兴趣的:(Linux系统,Linux指令)