ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux常用指令学习笔记

2020-02-03 19:42:05  阅读:179  来源: 互联网

标签:文件 查看 路径 用户 笔记 etc 指令 Linux 进程


主要内容

  • 关机:shutdown -h now(正常关机),halt(关闭内存),init 0
  • vmware备份操作系统:频繁备份使用快照,长期才备份一次的使用克隆(克隆- - 时系统必须处于关闭状态)

主要文件

  • bin:二进制文件
  • dev:外接设备,需要挂载(手动分配盘符)
  • etc:配置文件
  • home:除了root用户以外的用户的家目录
  • proc:process,Linux运行的进程
  • root:root用户的家目录
  • sbin:super binary 也是二进制文件,但必须有超级管理员的权限才可以运行
  • tmp:系统运行时产生的临时文件
  • usr:存放用户自己安装的软件
  • var:存放系统日志
  • mnt:外接 设备挂载
    相对路径:相对当前的工作路径
    ./ 从当前目录,这个符号可以省略
    …/从上一级目录下
    绝对路径:从根“/”开始

##############基础指令##########################

  • ls(list)
  • 蓝色表示文件夹
  • 黑色表示文件
  • 绿色表示其拥有所有权限(以上颜色是centos某版本,颜色根据linux的版本不同会不一样)
  • ls -l 以详细列表的形式展示
  • ls -a显示包含隐藏文件的列表
  • ls -lh 以列表并且可读性高

  • pwd(print working directtory) 打印当前工作目录

  • cd (change directory) 切换目录

  • ~ 表示当前用户的家目录

  • mkdir (make directory) 创建目录
  • mkdir -p 多层创建目录
  • mkdir 路径1 路径2 路径3 同时创建多个文件夹

  • touch 创建文件

  • cp 被复制的文件的路径 目标路径
  • cp -r 被复制路径 目标路径 递归复制,针对复制文件夹

  • mv (move)移动
  • mv 原位置 新位置

  • rm 移除
  • rm -f
  • (force) 无须确认操作,强制删除
  • rm -r 递归删除
  • rm -rf
    可以同时删除多个文档,中间用空格隔开
    用*来表示任意字符或者字符串

  • vim 文本编辑器
  • vim 文件的路径
    上面的文件路径中的文件名可以不存在
    :q 退出打开的文件

  • 输出重定向
    >覆盖输出
    >> 追加输出
    将终端输出的内容 输出至文件中

  • cat 直接打开一个文件,在终端查看
  • cat 合并文件1 合并文件2 … >合并之后的文件路径
    合并之后原文件还在

##############进阶指令##########################

  • df 查看磁盘空间
  • df -h 以可读性查看磁盘空间

  • free 查看内存使用情况
  • free -m 以单位Mb查看
  • free -g 以单位Gb查看

  • head 查看一个文件的前n行 n默认10
  • head -n 文件名
  • tail 查看一个文件的末尾n行,n默认10
  • tail -n 文件名
  • tail -f 文件名 查看文件内容中追加的内容
  • tail一般用于查看系统日志
  • q键退出

  • less 以较少的内容查看,按下辅助功能键查看更多
  • 空格键可以翻页

  • wc 统计文件信息
  • 包括行数和单词数、字节数
  • wc -lwc
  • -l 行数
  • -w 单词数
  • -c 字节数

  • date (重点)
  • date +%F 2020-01-01
  • date “+%F %T” 2020-01-01 12:30:30

date “-1 day” “+%F %T” 一天前的时间


  • cal 输出日历
  • cal -y 年份 输出第几年的日历

  • clear/ctrl+L 清屏

  • | 管道
    一般用于“过滤”、“扩展处理”
    管道不能单独使用,必须要配合其他指令

例如: ls /|grep y 输出根目录下面包含y的内容 grep 过滤
以管道为分界线,前面的内容为过滤源

s /|wc -l 根目录下的内容个数

##############高级指令##########################

  • hostname 操作服务器的主机名
  • hostname -f 输出当前主机名的FQDN(全限定域名)

  • id 查看一个用户的基本信息,不指定则默认当前用户
  • whoami 一般用于shell脚本,获取用户名

  • ps -ef
    ps 用于查看服务器进程
    -e 等价于-A,表示列出全部的进程
    -f 显示全部的列(显示全字段)
    如果一个进程的父级进程找不到,该进程为僵尸进程
  1. uid 该进程的用户id
  2. pid 进程id
  3. ppid 该进程的父级id
  4. c cpu占用率
  5. stime 进行的启动时间
  6. tty 终端设备,发起该进程的设备识别符号,如果显示“?”,表示该进程并不是由终端设备发起
  7. time 进程执行的时间
  8. cmd 该进程的名称或者对应的路径

  • top 查看服务器资源进程,内存、cpu占用等等
    q键退出
    M 将结果按照内存排序
    P 将结果按照cpu排序
    l 查看每个cpu的状态

  • du -sh 作用:查看目录的真实大小
    -s summeries,显示汇总的大小
    -h 以可读性较高的形式显示

  • find 用于查找文件
    -name 按照文档名称进行搜索
    -type 按照文档的类型进行搜索
    -表示文件(在使用find时用f替换)
    d表示文件夹

  • service 用于控制一些软件服务的启动、停止、重启
    service 服务名 start/stop/restart

ps -ef|grep httpd 查看httpd进程


  • kill 杀死进程
    kill 进程pid
    killall 进程名称

  • ifconig 获取网卡信息

  • reboot 重新启动计算机
  • reboot -w 模拟重启(写关机日志)

  • shutdown 关机 (慎用)

  • shut down -h now

  • init 0

  • halt

  • poweroff


  • uptime 输出计算机的运行时间

  • uname 获取计算机操作系统的信息
  • uname -a

  • netstat -t 列出tcp协议的连接
  • netstat -n 可读性较高
  • netstat -l 列出正在监听的连接
  • netstat -p 显示发出连接的进程pid和进程名称

  • man 其实是manual,q退出,菜单
    man加上想要查询的指令,可以查询这个指令的相关用法

##############练习##########################

  • ctrl+u快速删除一整行指令
  • 快速删除/temp下所有的A开头的目录
    rm -f /temp/A*
  • 备份
    cp /etc/passwd /tmp
  • 查看系统最后创建的三个用户
    tail -3 /etc/passwd
  • 统计当前系统中的一共多少用户
    wc -l /etc/passwd
  • 如何创建/temp/test.conf文件
    touch /temp/test.conf
  • 如何通过vim编辑打开/tmp/test.conf vim /temp/test.conf
  • 如何查看头三行和尾三行
    head -3 /etc/passwd #tail -3 /etc/passwd
  • 如何一次性创建目录/text/1/2/3/4
    mkdir -p /text/1/2/3/4
  • 查看磁盘空间
    du -sh /etc
  • 删除/tmp 所有文件
    rm -rf /tmp/*
  • 启动Apache服务,并检查是否成功 service httpd start
    ps -ef|grep httpd
  • 杀死Apache进程
    killall httpd或者查看pid之后使用pid

##############vim##########################

  • 命令,编辑,末行

  • vim 文件路径
  • vim +数字 文件路径 定位行数打开
  • vim +/关键词 文件路径 高亮打开
  • vim 文件路径1 文件路径2 文件路径3
    :files 查看打开了哪些文件 %a表示正打开的文件,#表示上一个打开的文件
    :open 文件名 打开指定文件
    :bn 切换到下一个文件 back next
    :bp 切换到上一个文件 back prev

在命令模式下

  1. 光标移动:
  • 光标移动到行首
    ^
  • 光标移动到行尾
    $
  • 光标移动到首行
    gg
  • 光标移动到末行
    G
  • 翻屏
    向上:Ctrl+b(before)或者 pageup
    向下:ctrl+f(After)或者 pagedown
  1. 复制
  • 复制光标所在行
    yy

  • 粘贴 p

  • 以光标所在行为准(包含当前行),向下复制指定的行数
    数字yy(例如: 3yy)

  • 可视化复制
    Ctrl+v

  1. 剪切、删除
  • 剪切、删除光标所在行
    dd

  • 剪切、删除向下的指定行(包含当前行)
    数字dd(删除之后下一行上移)

  • 剪切、删除之后下一行不上移
    D(删除之后当前行变为空白行)

  • 撤销、恢复
    u(undo)
    恢复 Ctrl+r 可以取消之前的一次撤销

  1. 光标移动
  • 快速将光标移动到指定的行数
    数字G
  • 以当前光标为准,向上或者向下移动
    数字+↑或者数字+↓
  • 末行模式下,移动到指定的行数
    :数字回车
  1. 模式间的切换
  • 命令模式输入:进入末模式
  • 命令模式输入i、a进入编辑模式

在末行模式下

  • 保存
    :w
  • 另存为
    :w 路径
  • 退出
    :q
  • 保存并退出
    :wq
  • 强制退出,不保存刚才的修改
    :q!
  • 调用外部命令
    :!指令
  • 搜索
    /
  • 在搜索结果中查看上一个和下一个
    N/n (next)
  • 取消高亮
    :nohl (no highlight)
  • 替换
    : s/搜索的关键词/替换内容
    只是替换光标所在行的符合条件的第一处
    : s/搜索的关键词/替换内容/g
    替换光标所在行的符合条件的所有
    : %s/搜索的关键词/替换内容
    替换整个文档中每行第一处符合条件的
    : %s/搜索的关键词/替换内容/g
    替换整个文档中的符合内容

%表示整个文档
g表示全局(global)

  • 显示行号
    :set nu
    取消行号
    :set nonu

在编辑模式下

  • i 在光标所在字符前面插入 insert

  • a 后面插入 after

  • esc 退出

  • 代码着色
    :syntax on 开启
    :syntax off 关闭

##############用户管理##########################

  • /etc/passwd 存储用户的关键信息(包含主组信息)
  • /etc/group 存储用户组的关键信息(包含附加组信息)
  • /etc/shadow 存储用户的密码信息

用户管理

添加用户

useradd
-g 指定用户的用户主组
-G 指定用户的附加组
-u uid,用户的id(用户的标识符),系统默认会从500之后按顺序分配uid‘’
如果不想使用系统分配的,也可以通过选项自定义

案例:创建用户zhangsan,在passwd中查看是否添加成功,/home目录下也应该有文件产生

  • passwd文件组成:
    用户名:密码:用户id:用户组id:注释:家目录:解释器shell
    密码位置一般显示为x,表示密码占位符
  • 解释器shell:等待用户输入指令后,该解释器会收集用户输入的指令,传递给内核处理

案例:添加选项,创建用户lisi,让lisi属于501主组,附加组500,自选靓号666
useradd -g 501 -G 500 -u 666 lisi

修改用户

usermod
-g
-G
-u
-l 修改用户名

案例:修改用户主组。修改zhangsan的用户主组为500,附加组为501
usermod -g 500 -G 501 zhangsan

案例:修改zhangsan用户的用户名为wangwu
usermod -l wangwu zhangsan

  • 设置密码
    passwd 用户名

案例:设置wangwu的密码

设置之后在shadow文件中查看
设置成功后可以登录用户

  • 切换用户: su(switch user)
    如果用户名不指定则表示切换为root用户

  • 用户删除
    userdel
    -r 删除用户的同时,删除其家目录

案例:删除wangwu用户

如何删除已经登录的用户?
kill掉用户的进程,所以先查看用户进程:ps -ef|grep wangwu,再kill进程,再userdel

用户组管理

  • /etc/group
    文件结构:
    用户组名:密码:用户组id:组内用户

  • 用户组添加
    groupadd
    -g 自选用户组id(默认从500开始)

  • 用户组修改
    groupmod
    -g 设置用户组id
    -n 设置新的用户组名称

  • 删除用户组
    groupdel

注意:
删除的组是某个用户的主组时,则需要将组内所有用户移除才能删除

##################网络管理##########################

  • 网络配置文件
    /etc/sysconig/network-scripts/
    其中的ifcfg-eth0和ifcfg-lo为网卡信息

  • service network restart 网卡重启
    /etc/init.d/network restart 如果没有上面的指令用这条

  • 创建快捷方式(软链接)
    ln -s 原文件位置 快捷方式位置

网卡不可轻易停止

  • 停止某个网卡:#ifdown 网卡名
  • 开启某个网卡:#ifup 网卡名

例如:需要重启eth0网卡,则可以输入
#ifdown eth0
#ifup eth0

##################ssh服务##########################

  • ssh(secure shell ,安全外壳协议),该协议有2个常用的作用:远程连接协议、远程文件传输协议
    端口号22 端口范围0-65535
    ssh服务配置文件位置:/etc/ssh/ssh_config

  • 服务启动停止重启
    #service sshd start/stop/retart
    #/etc/init.d/sshd start/stop/retart

  • 远程终端
    常用终端:Xshell、secureCRT、Putty
    通过ip地址和端口号使用远程终端连接

  • ssh文件传输
    ①可视化的界面传输工具:Filezilla
    新建站点,登陆类型正常
    ②通过命令行工具传输文件PSCP.exe,必须通过命令行打开
    为了使用方便,将其放入环境变量中,可以直接放到C:/windows下

  • pscp格式

  1. pscp 选项 用户名@linux 主机地址:资源路径 windows本地地址 (说明这是下载格式)
  2. pscp 选项 资源路径 用户名@linux主机地址:远程路径 (上传至Linux服务器)
    pscp 选项 -ls 用户名@linux主机地址(列出远程目录下结构)

pscp -r root@192.168.21.123:/etc E:/

  • linux中的scp可以用于Linux相互上传
买了否否否冷 发布了4 篇原创文章 · 获赞 3 · 访问量 1138 私信 关注

标签:文件,查看,路径,用户,笔记,etc,指令,Linux,进程
来源: https://blog.csdn.net/qq_42679237/article/details/104154686

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有