linux指令太多记不住?小白看这篇就够了!

大家好,我是一只学弱狗,记录学习的点点滴滴!

优质文章
优质专栏

XShell和XFTP下载地址,官方免费

小技巧

  • 如何切换输入法Ctrl+空格
  • 如何使鼠标脱离界面至Windows界面Ctrl+Alt
  • 方向上下键查看以前执行过的命令

帮助指令

  • man 待查看的指令,如man ls
  • help 待查看的指令,如help cd

关机与重启

  • shutdown -h now :立即关机
  • shutdown -h 1:一分钟后关机
  • shutdown -r now:立即重启
  • halt:等价于关机(没试过)
  • reboot:重启系统(亲测可用)
  • sync:将内存的数据同步到磁盘上(韩老师强力推荐!)

Vim模式切换及快捷键

在这里插入图片描述

  • wq 保存并退出
  • q 退出(前提,不可修改文件)
  • q! 强制退出(可以修改文件,但不保存)
  • 复制单行:在一般模式下,将光标停留下要复制的行,按 yy
  • 复制多行:在一般模式下,将光标停留下要复制多行的最行一行,按*yy,*为要复制多行的总行数
  • 粘贴:在一般模式下,将光标移至需要粘贴的位置,按p即可。
  • 删除行:在一般模式下,光标停留在要删除行,按dd即可。
  • 删除多行: 在一般模式下,按*dd,原理同复制多行。
  • 回到首行和尾行:在一般模式下,按gg可将光标停留在首行,按G可将光标停留在尾行。
  • 撤销:在一般模式下,按u。
  • 显示行号:在命令模式下,输入set nu显示行,输入set nonu取消显示行。
  • 光标移动到指定行:在正常模式下,输入行号,然后按shift+g
  • 查找:在命令模式下,输入/关键字

运行级别

  • 0:关机
  • 1:单用户(找回丢失密码):可以在开机时进入,单用户运行级别不需要密码就可以进入,从而设置密码。
  • 2:多用户无网路服务
  • 3:多用户有网络服务
  • 4:保留
  • 5:图形界面
  • 6:重启

inittab 0,切换运行级别到0,即关机,目前对我来说它最大的作用莫过于找回密码了

下面这四个文件地址记好了,在练习的时候忘了自己创建过哪些组,创建过哪些用户,都可以进入查看

  • 用户配置文件地址 /etc/passwd
  • 用户组配置文件地址 /etc/group
  • 口令配置文件地址 /etc/shadow
  • 用户级别配置文件 /etc/inittab

文件目录

  • pwd 查看当前所在位置的绝对路径
  • ls [选项] 显示当前位置的目录和文件情况,如ls -a显示所有目录,包括隐藏文件(在Linux中,隐藏文件以.开头);ls -l以列表形式显示目录和文件情况。多个选项可以并列使用,如ls -al
  • cd ~cd回到当前用户的家目录,cd..回到当前位置的上一级目录
  • mkdir [选项] 路径创建一个文件夹,如mkdir /home/tigermkdir apple,如需创建多级目录,mkdir -p 路径,如mkdir -p animal/dog
  • rmdir 路径删除路径下的空文件夹,不能用来删除文件
  • touch 路径/文件名指令路径下创建文件,如touch /home/animal/HelloWorld.java,可以连续创建多个文件touch a.txt b.txt
  • cp [选项] 源文件夹或文件 目的文件夹或文件,选项部分-r可以递归的复制整个文件夹。如cp -r /home/animal/ ccc,指令\cp -r 源文件夹或文件 目的文件夹或文件强制覆盖
  • rm [选项] 目录或文件删除文件或目录(可以不为空),-r,递归删除整个文件夹,如rm -r animal-f强制删除不提醒 ,如rm -rf animal
  • mv 源路径 目的路径 当在同一级目录移动时,可以认为时重复名,如mv a.txt b.txt
  • cat [选项] 文件以只读的方式查看文件,-n显示行号,如cat -n /etc/profile
  • more 文件 基于Vim编辑器的文本过滤器,以全屏幕的方式按页显示文本文件内容。空格键:向下翻一页;enter:向下翻一行;q:离开当前显示页面;ctrl+f:向下滚动一屏幕;ctrl+b:向上滚动一屏幕;=:输出当前行号;:f输出文件名和当前行号
  • less 文件懒加载的方式查看文件,对大文件的查看有较高效率。空格键:向下翻一页;方向上键:上翻一行;方向下键:下翻一行;q:离开
  • > 输出重定向,可理解为覆盖写,如ls -l > abc.txt,可以做文件覆盖,如cat ccc.txt > mydate.txt
  • >> 追加内容,如ls -al >> abc,txt
  • echo 输出内容到控制台,如echo "HelloWorld",查看系统变量echo $PATH
  • head 文件 显示文件开头部分内容,默认情况下显示文件的前10行内容,如需查看文件头5行内容,head -n 5 /etc/profile
  • tail 文件 输出文件尾部的内容,默认情况下显示文件的后10行内容,和head类似,但是它有一个新功能,实时追踪文档的所有更新,如tail -f apple.txt,但ctrl+c退出
  • ln -s 原文件或目录 软链接名 类似于为一个目录或文件创建一个快捷方式,如ln -s /home/animal ta,删除软链接rm ta
  • history 查看已经执行过的指令,如需执行执行第5条指令,!5

时间日期

  • date 显示当前时间,格式化时间,date "+%Y年%m月%d日 %H:%M:%S",设置时间date -s 2020-12-19 -19:09:35
  • cal 显示本月月份信息,cal 2020 显示2020年月份信息

搜索查找

  • find 搜索范围 选项 从指定目录向下递归地遍历各个子目录,将满足条件的文件或者目录显示在终端。-name 文件名:按照指定的文件名查找,如find /home -name apple.txt-user 用户名:查找属于指定用户名的所有文件,如find /home -user root-size 文件大小,按照指定的文件大小查找文件,如find /home +size 20M,其中+表示大于,-表示小于,不加任何符号就是等于。
  • locate 文件名 利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位,使用之前,应创建好locate数据库,updatedb,查找文件locate hello.txt
  • grep [选项] 查找内容 源文件grep profile /etc/profile,选项-n可显示匹配行及行号,如grep -n profile /etc/profile,当需要忽略字母大小写时,可以使用选项-i,如grep -i H ccc.txt
  • |表示将前一个命令的处理结果传递给后面的命令处理,如cat /etc/profile | more

压缩解压缩指令

  • gzip 文件 压缩文件,如gzip apple.txt,注意压缩后源文件消失,当压缩多个时,如gzip HelloWorld.java hello.txt,会压缩成两个压缩文件,并不会合并到一起
  • gunzip 文件 解压文件,如gunzip apple.txt.gz,解压多个文件时,gunzip hello.txt.gz HelloWorld.java.gz
  • zip [选项] 压缩文件名 需要压缩的文件,如zip myHello.zip ccc.txt,将ccc.txt文件压缩成为myHello.zip,注意,压缩后ccc.txt文件不会消失。如需压缩多个文件,zip my.zip ccc.txt hello.txt,将ccc.txt文件和hello.txt文件压缩至my.zip。如需压缩整个文件及其所有字文件夹时,选项部分可用-r,如zip -r fu ddd
  • unzip -d 解压后的目录 压缩文件,如unzip -d /home/yasuo 解压文件
  • tar [选项] 压缩文件名 需要压缩或解压的文件,当需要压缩时,如tar -zcvf Hello.tar.gz HelloWorld.java HelloWorld.txt,此方法在压缩时,原来文件不会消息且或压缩文件的所有子文件夹,对于选项-c:产生.tar打包文件;-v:显示详细信息;-z:打包同时压缩,-f:指定压缩文件后的文件名,一班放最后。放需要解压时,tar -zxvf 压缩文件名 -C 压缩路径,命令-x:表示解压文件,注意加-C,否则会失败,如tar -zxvf myhome.tar.gz -C ./

用户和用户组管理

  • useradd [-d 指定家目录] 用户名默认是在/home下创建一个新的,若指定家目录,则该目录不应创建,由该指令自动创建
  • userdel [-r] 用户名,如存在选项-r,则删除此用户的家目录
  • id 用户名查看用户信息
  • whoami 查看当前登录的用户
  • passwd 用户名指定密码
  • su - 用户名切换用户,通过exit切换回原来的用户
  • logout注销当前用户
  • groupadd 组名创建组
  • groupdel 组名删除组
  • useradd -g 用户组 用户名 添加用户时指定用户组
  • usermod -g 用户组 用户名 修改用户的用户组

权限管理

  • 查看文件的信息

在这里插入图片描述:除用户的所有者和所在组的用户外,系统中其他的用户都是文件的其他组
:文件的初始所有者和所在组即创建本文件的所有者和所有者所在的用户组

  • 文件类型:-:普通文件、d:目录、b:区块设备文件,如硬盘与软盘、c:字符设备文件,如键盘、鼠标、s:数据接口文件,套接口文件、l:软链接文件
  • 重点rwx作用到文件,r表示可查看,w表示可修改,但是不代表可以删除该文件,删除一个文件的前提是对该文件所在的目录有写权限才可删除,x代表可执行。rwx作用到目录,r代表可查看目录内容,w代表可修改,即创建、删除和重命名等,x代表可进入该目录。
  • chown 用户名 文件名chown 用户名:用户组 文件名 ,修改文件的所有人,如chown jack HelloWorld.javachown root:root HelloWorld.java,若是文件,-R使其下所有子文件递归生效,如chown - R jack achown -R root:root a,R必须大写
  • chgrp 组名 文件名,修改文件所在组,如chgrp bandit HelloWorld.java
  • chmod 权限 文件或目录方式一:通过+ - =来变更权限,如chmod u=rwx,g=rx,o=x HelloWorld.java,chmod o+w a.txtchmod a-x a.txt,其中u代表所有者、g代表所有组、o代表其他人、a代表所有人=赋值权限、+添加权限、-删除权限方式二: 通过数字变更权限,r=4、w=2、x=1,如chmod 700 a.txt

定时任务

  • crontab 选项-e:编辑定时任务,如*/1 * * * * ls -l /etc/ >> /tmp/to.txt,每小时的每分钟执行ls -l /etc/ >> /tmp/to.txt-l:查询定时任务、-r:删除当前用户所有的任务。
  • 占位符*的含义。第一个*:一小时的第几分钟(0-59);第二个*:一天当中的第几小时(0-23);第三个*:一个月的第几天(1-31);第四个*:一年当中第几个月(1-12);第五个*:一周当中的星期几(0-7);
  • *代表任何时间,比如第一个*就代表一小时每分钟都执行一次。代表不连续的意思,比如0 8,12,16 * * *就代表每天的8点0分,12点0分,16点0分都执行一次命令。-代表连续的时间范围,比如0 5 * * 1-6,代表在周一到周六的凌晨5点0分执行命令。*/n,代表每隔多久执行一次。

网络配置

进程管理

  • ps 选项-a:显示当前终端的所有进程信息,-u:以用户的格式显示进程信息,-x:显示后台进程运行的参数,如使用ps -aux|grep sshd查看sshd的进程信息。

  • 属性说明
    在这里插入图片描述补充:STAT指进程状态,其中S表示睡眠,s表示该进程是会话的先导进程,N表示进程拥有比普通优先级更低的优先级,R表示正在运行,D表示短期等待,Z表示僵死进程,T表示被跟踪或被停止等。

  • ps -ef,以全格式显示当前所有进程,-e显示所有进程,-f全格式,该命令可用来查看父进程,如ps -ef | grep sshd,查看sshd的父进程
    在这里插入图片描述

  • kill 进程号通过进程号杀死进程,若要强制杀死该进程,则用kill -9 进程号

  • killall 进程名,通过进程名杀死进程

  • pstree [选项]可以更直观的查看进程信息,-p:显示进程的PID,-u:显示进程的所属用户

服务管理

  • service 服务名 [start|stop|restart|reload|status],如查看当前防火墙的状态:service iptables status,在CentOS7.0后,不再使用service,而是systemctl

  • 可以通过telnet查看测试某个端口,如telnet 192.168.1.100 22

  • 查看系统服务,可以通过setup命令,也可以在/etc/init.d目录下查看(CentOS7.0后版本此命令看不到)

  • 开始流程:开机->BIOS->/boot->init进程->运行级别->运行级对应的服务

  • chkconfig命令可以给每个服务的各个运行级别设置自启动,chkconfig --list | grep sshd或者chkconfig sshd --list,查看sshd服务在各个运行级别下的自启动情况,chkconfig --level 5 sshd on/off,设置在运行级别5下sshd服务的自启动状态,重启机器后生效。注意:在CentOS7后已经不使用

  • top指令动态监控进程信息,在交互模式中可以执行u:查看指定用户的进程信息,k:输入终止进程的PID,N:以PID排序,M:以内存的使用率排序,P:以CPU使用率排序,默认此项,q:退出在这里插入图片描述

  • top -d 秒数,指定top命令每隔几秒更新,默认是3秒

  • netstat -anp,查看所有的网络服务

RPM与YUM

  • rpm -qa:查询所安装的所有rpm包,rpm -qa | grep firefox ,查看是否安装firefox
  • rpm -q 软件包名:查询软件是否安装
  • rpm -qi 软件包名:查询软件包信息
  • rpm -ql 软件包名:查询软件包中的文件
  • rpm -qf 文件全路径名: 查询文件所属的软件包
  • rpm -e RPM包名称:卸载rpm包,rpm -e --nodeps 软件包名:强制删除
  • rpm -ivh RPM包全路径名称:安装rpm包
  • yum list|grep 软件名:查询yum服务器是否有需要安装的软件
  • yum install 软件包名 :下载安装

CentOS7

  • firewall-cmd --list-ports 查看已经开放的端口
  • firewall-cmd --zone=public --add-port=8080/tcp --permanent 开放端口
  • systemctl start firewalld 开启防火墙
  • systemctl stop firewalld 关闭防火墙
  • firewall-cmd --state 查看防火墙状态

猜你喜欢

转载自blog.csdn.net/qq_44486437/article/details/111462530