linux基操笔记

Linux目录结构

home:家.用户的家
  • 普通用户的家,目录文件在

Linux安装软件(需要网络)

  • 使用过程中可能需要一些软件,但不是Linux自带的,比如VIM,wget,这时候需要从网上去下载
  • yum -y install 软件名
  • -y指同意全部要求,不加的话安装过程可能需要多次同意(反正也要同意,不同意不让用)

Linux常用命令

查看帮助man

  • man 需要查看帮助的命令,如man mkdir
  • 帮助过长显示不全按空格翻页
  • 退出帮助目录按q

切换目录:cd

  • cd 目录
  • cd 目录/目录
  • cd .. 上一级目录
  • cd /根目录
  • cd ~ 回家,即切换到用户主目录

创建目录和删除目录

  • mkdir创建目录
    • mkdir+目录名称
    • mkdir -p 目录1/目录2/目录3(可以一次创建所有目录)
  • rmdir删除目录
    • rmdir+目录名(这样只能删除空目录,即便该目录下的目录仍为空也不可删除)
    • rmdir -p 目录1/目录2/目录3(这样可以迭代删除)

展示目录下的文件列表

  • ls命令
    • ls展示的只能是能看见的文件(和目录)的名称
    • ls -a 展示所有的文件的名称(包括隐藏的目录(文件前面有“.”的是隐藏的文件或目录))
    • ls -l 展示所有的信息
      • ls -lh 文件大小以K为单位展示(不足K直接显示数字)
  • ll命令
    • ll是ls -l的简写,其效果等同于ls -l
    • ls -lh同理可简写为ll -h

浏览文件

  • 查看文件时若文件名太长可以先输入一部分然后按Tab键补全,若未自动补全说明目前还有其他名字相似文件,继续输入
  • cat:显示文件所有内容(若内容太多则展示不全!)
    • cat 文件名
  • more:分页显示
    • more 文件名
      • 空格显示下一页(显示结束后自动退出,无法显示上一页)
      • enter(回车)显示下一行
  • less:分页显示
    • 空格(PgDn)显示下一页
    • PgUp显示上一页
    • enter(向下箭头)显示下一行
    • 向上箭头显示上一行
    • 按q退出
  • ☆tail
    • 查看一个文件的最后几行
    • tail -行数 文件名
    • tail -f 文件名(当文件内容增加时,动态的输出文件)
      • 当文件改名或者删除的时候,停止追踪
      • Ctrl+c退出
    • tail -F
      • 同tail -f,但若文件改名或删除后再次创建同名文件,会继续追踪
    • tailf
      • 等同于tail -f,但如果文件不增长,它不会再次访问磁盘(省电!)

文件的操作

  • 创建文件
    • touch 文件名(创建一个空白的文件)
  • 复制
    • 文件复制
      • cp 文件名 目录/文件名(目录省略即表示复制到当前目录下)
    • 目录复制
      • 目录复制同上,但要注意目录不能复制到文件中
  • 移动(重命名)
    • mv 文件名 目录/文件名
    • 重命名文件只需要不设置目录改名即可(不设置目录即默认是当前目录)
  • 删除
    • 删除文件
      • rm 文件名 (这样会进行询问是否删除)
      • rm -f 文件名 (这样不会询问,但是要慎重操作)
    • 删除目录
      • rm -r 目录名(带询问的递归的删除)
      • rm -rf 目录名(不询问的删除整个目录包括目录下的文件,谨慎操作)
      • rm -rf /* 自杀命令,敢用(服务器)必死!(不要好奇使用,用则必悔)

压缩/解压缩

  • 常用的参数
    • -cvf (打包一个文件或目录)
    • -zcvf (打包并压缩一个文件或目录)
    • -xvf (解压或者打开一个tar文件)
  • 使用格式
    • tar 参数 文件名(打包后的新文件名) 要打包/解压的文件目录(要打包得文件名或者目录名)
  • 例如:
    • 将当前目录下的所有文件打包成test.tar
      tar -cvf test.tar ./(./代表当前目录下的所有文件)
    • 将当前目录下的所有文件打包压缩成test.tar.gz
      tar -zcvf test.tar.gz ./*
    • 将test.tar解压到当前目录
      tar -xvf test.tar
    • 将test.tar解压到当前目录下的b目录
      tar -xvf test.tar -C b

其他常用命令

  • grep查找命令
    • grep 要查找的字符串 在哪里查找 (显示字符串所在的那一行)
    • grep 要查找的字符串 在哪里查找 --color (可以高亮显示该字符串)
    • grep 要查找的字符串 在哪里查找 --color -A3 -B5(同时显示改行的前面5行和后面3行,A:After;b:Before)
  • wget下载命令(默认保存到当前目录)
    • wget 下载链接
  • pwd显示当前目录

Vi编辑器和VIM编辑器

三种模式(命令行模式、插入模式、底行模式)

  • 命令行模式
    • 使用命令后自动进入命令行模式
    • 从其他模式切换到命令行模式按esc
  • 插入模式
    • 切换到插入模式i,o,a
      • i:在当前位置前插入
      • I:在当前行首插入
      • a:在当前位置后插入
      • A:在当前行尾插入
      • o:在当前行之后插入一行
      • O:在当前行之前插入一行
  • 底行模式
    • 切换到底行模式按:(冒号)
    • 底行命令
      • 退出(不保存修改) q
      • 强制退出(不保存修改) q!
      • 保存修改退出 wq
    • 快捷键
      • dd 删除一行
  • 文档过长需要搜索可以用 /要搜索的内容 进行搜索(前提是不在任何一个模式下)
  • 其他使用方法和快捷键详见另外两个文档

重定向输出

  • 使用">"或者">>"即可进行重定向输出
  • 使用方法:命令 >或者>> 文件名(这样就可以把命令原本要显示在屏幕上的信息输入到指定文件中)
  • 例如:将当前的进程信息输入到名为test的文件中
    • ps -ef >> test
  • >
    • 使用>会覆盖原文件中的内容
  • >>
    • 使用>>会在原文件中追加内容

命令执行控制符&&

  • 命令之间使用&&链接,实现逻辑与的功能
  • 例如:要在当前目录下创建a目录,在a目录里创建b目录,再在b目录下创建test文件
    • mkdir -p a/b && cd a/b && touch test

管道

  • 管道就是将另一个的输出座位另一个的输入
  • 比如:查找进程信息中包含3306的进程
    • ps -ef | grep 3306

常见的系统命令

  • date 显示或设置系统时间
    • date显示当前系统时间
    • date -s "2018-10-28 16:44:32" 设置系统时间
  • df 显示磁盘信息
    • df -h 有好的显示磁盘信息
  • free显示内存状态
    • free -h 格式化显示内存状态
    • free -m 以MB为单位显示内存状态
  • top显示,管理执行中的程序(相当于windows中的任务管理器)
    • 按q退出
  • clear清屏(Ctrl + l)
  • ps正在运行的某个进程的状态
    • ps -ef 查看所有进程
    • ps -ef | grep 进程有关的信息 (查看你想要的进程的信息)
  • kill结束进程
    • 通过PPID杀死进程 kill PPID
    • kill -9 PPID 强制杀死进程
  • who 查看目前登入系统的用户信息
  • du 显示目录或文件的大小
    • du -h 显示当前目录的大小
  • hostname查看主机名
    • vi /etc/sysconfig/network (修改后需要重启)
  • uname
    • uname -a(显示本机详细信息)
      依次显示为:内核,主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称

网络管理命令

  • ifconfig:查看所有的网络设备(网卡)
    • ifconfig 网卡名称 down (禁用网卡)
    • ifconfig 网卡名称 up (启用网卡)
  • ping命令
    • ping 网址 (可以用于测试网络是否连接)
      • Ctrl + C停止ping命令
      • Ctrl + z暂停ping命令
  • netstat
    • netstat -an 相当于Windows下的netstat -ano(用于查看端口号和PID)

用户管理(了解)

  • 用户添加(需要root用户在home目录下操作)
    • useradd 添加用户
      • useradd user1(在系统中添加一个名为user1的用户,同时在home目录下添加一个名为user1的目录)
      • useradd user2 -d /home/user3 (在系统中添加一个名为user2的用户,同时在home目录下添加一个名为user3的目录,但这个user3的目录中存的是user2的信息)
  • 改密(需要root用户在home目录下操作)
    • passwd (不指定用户名则默认是修改root用户的密码)
    • passwd username(修改指定用户的密码)
  • 删除
    • userdel 用户名 (只删除系统中的用户,不删除home下的目录)
    • userdel -r 用户名 (删除用户包括home下的目录)
  • 切换登录用户
    • ssh -l 用户名 -p 端口号 主机号 (这种方法太长,太麻烦,几乎不用,只做了解)
    • su - 用户名 (注意"-"两边各有一个空格)(root切换其他用户不用密码,其他用户切换root用户需要密码)
  • id命令
    • 查看一个用户的uid和gid

组管理(了解)

  • 授予某组的权限将被授予给这个组中的所有用户
  • 如果没有添加组,那么添加用户的时候默认组名和用户名一样
  • 创建组
    • groupadd 组名 (创建组)
    • useradd 用户名 -g 组名 (创建用户并指定组)
  • 删除组
    • groupdel 组名 (删除组若组中有用户,则不能删除)

授权管理

  • linux有三种文件类型:普通文件,目录文件,设备文件
    • 普通文件:包括文本文件,数据文件,可执行的二进制程序文件等...
    • 目录文件:linux把目录看成是一种特殊的文件,利用它构成文件系统的树形结构
    • 设备文件:linux把每个设备都看成是一个文件
  • 文件类型标识
    • 以d开头的是目录文件
    • 以-开头的是普通文件
    • 以l开头的是符号链接文件
  • 文件的权限
    • 以文件权限为 d rwx r-x r-x为例,一共有9个字母,每三个一组
      • d:代表文件的类型
      • 第一组(rwx):代表的是当前用户的权限
      • 第二组(r-x):代表的是组的权限
      • 第三组(r-x):代表的是其他用户的权限
    • 以文件权限为 d rwx r-x r-x为例
      • r为读取权,w为写入权,x为执行权,-为无操作权限
      • r=4,w=2,x=1;因此1代表只有执行权,2代表只有写入权,4代表只有读取权,3代表具有写入权和执行权,5代表具有读取权和执行权,6代表具有读写权,7代表具有全部权限。
    • 文件权限更改
    • chomd 755 1.txt (更改1.txt的权限为755,即rwx r-x r-x)
    • chomd u=rwx,g=rx,o=rx 1.txt (效果同上)
    • chomd 000 1.txt (这样虽然把文件设为所有的用户都没有权限,但超级管理员(root用户)仍具有所有权限!)
    • 更改文件所属的用户和组
    • chown 用户名:组名 文件名 (变更当前的文件或目录所属的用户或组)
    • chown -R 用户名:组名 文件名 (变更当前文件或目录以及目录中所有的子目录和子文件所属的用户或组)

其他小技巧

  • 如果某个命令显示的内容过多,一页显示不全,可以通过shift+PgUp和shift+PgDn进行上下翻页;也可以通过管道命令进行显示,例如:ll | less。

猜你喜欢

转载自www.cnblogs.com/yangwanhao/p/10026763.html