(课程学习笔记)玩转Linux:常用命令实例指南

本文是关于Linux的学习笔记,涵盖了从入门书籍推荐、开发环境搭建到基础命令的详细用法,包括文件管理、权限操作、文本处理、磁盘管理、进程管理和网络工具等实用技能,是Linux初学者的必备教程。
摘要由CSDN通过智能技术生成

链接:https://edu.csdn.net/course/play/26264/326631

课程一:linux入门经典书籍推荐

  1. linux入门到精通
  2. 鸟哥的linux私房菜
  3. linux就该这么学

课程二:linux开发环境搭建

  1. 如何安装linux系统?VMware了解一下
    1.1常见的虚拟机:VMware(收费、功能强大),VirtualBox(开源免费)

  2. 远程操作虚拟机神器XShell

  3. 拖拖拉拉实现文件传输

课程三:linux基本命令用法(工作中百分之九十是常用命令)

  1. 文件及目录管理命令
    1.1创建和删除
    创建一个或多个文件 touch xxx1 xxx2
    修改时间戳为当前时间 touch xxx
    进阶-a -m -t
    创建空目录 mkdir xxx
    递归创建多个目录 mkdir -p xxx/xxx1/xxx2
    删除一个或多个文件rm xxx1 xxx2
    删除一个或多个目录rm -r xxx1 xxx2
    强制删除文件/目录 rm -rf xxx
    移动文件/目录 mv xxx1,txt xxx2
    更改文件名 mv xxx1.txt xxx2.txt
    复制文件 cp file1 file2
    复制目录 cp -r dir1 dir2
    ps:如果dir2存在则dir1复制到dir2下
    1.2目录切换
    cd
    .当前目录
    …上一层目录
    cd 进入用户主目录
    cd ~进入用户主目录
    cd -返回进去此目录之前的目录(回退操作)
    cd …返回上级目录
    cd …/…返回上两级目录
    pwd:查看当前所在路径
    1.3列出目录项
    列出当前目录所有的文件 ls
    列出当前目录所有的文件包含隐藏文件 ls -a
    以列表形式列出当前目录所有文件包含隐藏文件 ls -ll
    以易于人类阅读形式列出当前目录所有文件ls -lh
    以树形显示目录的文件架构
    tree
    tree dir
    1.4权限及所有者相关
    查看文件的权限信息 ll
    例如:drwxr-x— tarena tarena
    解释:第一部分只有一个字符,代表文件类型;第二部分三个字符,代表文件所有者权限;第三部分三个字符,代表文件所属用户组权限;第四部分三个字符,代表其他人对这个文件的权限 ;第五部分为文件所有者的名字tarena,第六部分为文件所属用户组权限tarena。
    文件类型:- 普通文件 d 目录文件 p 管道文件 I 链块文件 b 块设备文件 c 字符设备文件 s 套接字文件
    1.4.1更改文件所有者 chown 英文释义 change owner
    chown[-R] 所有者文件或者目录
    chown[-R] 所有者:所属组文件或者目录
    [-R]代表所有的子孙目录文件也会相应的改变
    1.4.2更改文件所属组 chgrp 英文释义 change group
    chgrp[-R] 所属组 文件或者目录
    1.4.3修改文件权限 chmod
    使用数字来修改文件权限
    例如: chmod 777 file.txt
    将file.txt这个文件的权限修改为 三者都是可读可写可操作权限
    —分别是4 2 1,如果没有权限则是0
    7=4+2+1,7代表rwx
    5=4+1,5代表r-x
    3=2+1,3代表-wx
    使用字母来修改文件权限
    u-user g-group o-other a-all
    +代表添加 =代表设定 -代表删除
    例如 chmod a+w file.txt 意思是给所有的权限者添加写权限
    chmod u=rwx,go=rx file.txt 意思是给所有者可读可写可操作,给组用户和其他用户可读可操作

  2. 文本处理命令
    2.1 cat cat不是猫,是单词concatenate的缩写,代表“连接”
    在终端查看文本内容 cat file.txt
    从键盘创建一个文件 cat > file1.txt ,敲完这个命令后回车会进入编辑,再按ctrl+c会保存并退出编辑模式
    将几个文件合并为一个文件 cat file1.txt file2.txt > file3.txt
    2.2 more 分页显示查看
    基本操作:q:退出 more 空格键:向下滚动一屏 b:返回上一屏 回车:向下滚动一行
    分页显示文本文件内容 more file.txt
    通过管道分页显示结果 例: ll / etc | more
    2.3 less 分页显示查看
    基本操作:实际上与man命令相同
    分页显示文本文件内容 lessfile.txt
    通过管道分页显示结果 例: ll / etc | less
    2.4 head 显示文本文件前n行内容(默认显示前10行)
    例:head -n 5 file.txt 显示这个file.txt前五行的内容
    2.5 tail
    显示文件末尾最后几行内容 例:tail -n 5 file.txt
    循环查看文件最新内容,也就是刷新最新的内容
    比如查看日志文件时会用到,我们需要查看的是最新生成的日志追加内容 tail -f 20200415.log
    从第5行开始显示文件 tail -n +5 file.txt
    2.6 sort
    按ASCII码升序排序 sort file.txt
    排序并去除重复行 sort -u file.txt
    按ASCII码降序排序 sort -r file.txt
    2.7 uniq 显示去重后的内容 uniq file.txt
    2.8 文本处理三剑客
    grep 文件内的字符串查找
    grep [option] p attern file
    常用选项-i 忽略大小写 -r 递归搜索文件 -n 标识结果所在的行数 -s 不显示错误信息
    例:grep -rins apple file.txt,在file.txt这个文件里递归忽略大小写查询apple,且显示所在行数和错误信息
    sed 针对行的文本处理
    命令格式
    sed option ‘script’ file1 file2
    脚本格式
    /pattern/command
    常用选项
    -n 静默输出
    -i 直接修改源文件,经过脚本指令处理后的内容将输出至源文件
    常用脚本指令
    a append 追加 ,i insert 插入 ,d delete 删除,s substitute 替换,p print 打印
    常用sed替换指令
    /pattern/s/pattern1/pattern2/查找符合pattern的行,将该行第一个符合pattern1的替换为pattern2
    /pattern/s/pattern1/pattern2/查找符合pattern的行,将该行所有符合pattern1的替换为pattern2
    示例:
    sed ‘2a apple’ file.txt 在第二行后追加apple
    sed ‘1,2a apple’ file.txt 在第一,二行后分别追加apple
    sed ‘2i apple’ file.txt 在第二行上面插入apple
    sed ‘2d apple’ file.txt 把第二行删除
    sed ‘/root/a tarena1512’ /etc/passwd 在路径为/etc/passwd这个文件查找有root的行并追加tarena1512
    sed -n ‘/root/p’ /etc/passwd 在路径为/etc/passwd这个文件查找有root的并将这行内容打印
    sed ‘/root/s/bin/BIN/g’ /etc/passwd 在…查找包含root的行并将这行中所有的bin替换为BIN
    sed ‘s/bin/BIN/g’ /etc/passwd 在该文件中所有的bin替换为BIN
    sed ‘s/root/----&----/g’ /etc/passwd 在该文件中所有的root替换为----root----,&相当于拼接符号
    awk 针对列的文本处理
    命令格式
    awk option ‘script’ file1 file2
    脚本格式
    /pattern/{actions}
    condition{actions}
    示例:
    awk ‘{print $2}’ score.txt 打印出score.txt这个文件第二列的内容
    awk ‘$2<60 {print $2}’ score.txt 打印出score.txt这个文件第二列小于60分的内容
    awk ‘$2>90 {print $0 " GOOD"} $2<70 {print $0 " BAD"}’ score.txt 打印出score.txt这个文件,第二列分数小于70分的和分数大于90分的所有列内容,并在其后拼接上对应评语GOOD和BAD,$0代表所有列
    awk -F ‘:’ ‘{print $2}’ score.txt 以’:‘为分隔符打印出第二列的内容
    awk -F ‘:’ ‘{print $1"\t"$3}’ score.txt 以’:'为分隔符打印出第一列和第三列的内容,\t为转义字符空格
    awk -F ‘:’ ‘BEGIN {print “start:”}{print $1"\t"$3}END{print “end…”}’ score.txt 在所有打印内容的最前面以及最后面分别加上内容

  3. 磁盘管理命令
    3.1 df 磁盘文件的可用空间
    df -h 以人类能看的懂的方式看磁盘空间,h-human
    df ~ -h 查看家目录磁盘空间
    3.2 du
    显示目录或者文件所占空间 du (-h)
    显示指定文件所占空间 du -h file.txt
    3.3 tar
    压缩文件 tar zcvf file.tar.gz file1 file2
    解压文件 tar zxvf file.tar.gz

    -z 支持gzip属性的文件 
    -v 显示操作过程 
    -f 必须,使用档案名字,这个参数是最后一个参数,后面只能接档案名 
    -c 建立压缩档案 
    -x 解压
    
  4. 进程管理命令
    4.1 ps
    ps命令是Process Status的缩写,用来列出系统中当前运行的那些进程
    ps aux 列出目前所有的正在内存当中的程序

USER:该 process 属于那个使用者账号的
PID :该 process 的号码
%CPU:该 process 使用掉的 CPU 资源百分比
%MEM:该 process 所占用的物理内存百分比
VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
RSS :该 process 占用的固定的内存量 (Kbytes)
TTY :该 process 是在那个终端机上面运作,若与终端机无关,则显示 ?
STAT:该程序目前的状态,主要的状态有 R :该程序目前正在运作,或者是可被运作 S :该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。 T :该程序目前正在侦测或者是停止了 Z :zombie (疆尸) 程序
START:该 process 被触发启动的时间
TIME :该 process 实际使用 CPU 运作的时间
COMMAND:该程序的实际指令
4.2 top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况并且倒序排序,类似于Windows的任务管理器。
4.3 kill
linux下向进程发送信号的命令。
列出所有命令名称
kill -l
杀死指定进程PID的进程
kill –9 PID
4.4 killall
杀死指定名字的进程
killall helloworld

  1. 网络工具
    5.1 ssh 在主机环境是windows的情况远程操控linux服务器
    连接到远程主机 ssh name@remoteserver
    如何查看远程主机的IP地址 ifconifg
    通过SSH运行远程shell命令 ssh name@10.203.138.129 “uname -a”
    5.2 wget
    使用wget下载单个文件
    wget https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2
    断点续传
    wget -c https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2
    5.3 scp
    上传文件 scp /home/alvin/file.txt root@10.203.138.129:/home/root
    下载文件 scp root@10.203.138.129:/home/root/file.txt /tmp
    5.4 ping
    向指定的网络地址发送一定长度的数据包,按照约定,若指定网络地址存在的话,会返 回同样大小的数据包
    测试网络连通性 ping baidu.com
    ping指定次数 ping -c 5 baidu.com
  2. 用户管理工具
    6.1 sudo
    sudo command 以系统管理者的身份执行指令
    例:sudo touch file1.txt 以系统管理员的身份创建一个file1.txt
    6.2
    adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
    useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密 码、无主目录、没有指定shell版本。
    6.2.1 useradd
    例:sudo useradd -d “/home/alvin” -m -s “/bin/bash” alvin
    -d “/home/alvin" :就是指定/home/alvin为主目录
    -m 就是如果/home/alvin不存在就强制创建
    -s 就是指定shell版本
    6.2.2 adduser
    adduser user
    如何查看有几个用户?
    ls /home/ 直接查看home目录下有几个主目录
    6.2.3 userdel
    删除用户
    userdel -r user # 将其宿主目录和系统内与其相关的内容删除
    6.2.4 passwd
    更改密码
    passwd alvin
    6.2.5 groupadd
    添加一个新组
    groupadd leader
    查询组
    cat /etc/group | grep leader
    6.2.6 groupmod
    更改组名 groupmod -n leaders leader 前一个为新组名 后一个为老组名
    更改组GID groupmod -g 3000 leaders
    6.2.6 groupdel
    删除用户组
    groupdel leaders

7.linux终端快捷键(不同SHELL的快捷键会有所不同)
tab键:补全路径/命令,使用最广泛
ctrl+l: 清屏
ctrl+c: 终止当前运行的程序
ctrl+z: 将当前运行的程序转到后台,和&效果一样
ctrl+r: 查找历史命令

8.Vi/Vim编辑器基本用法
Vim可以理解为windows下的笔记本功能,但是比笔记本功能强大很多。
8.1三种模式之间的切换
在这里插入图片描述
命令模式快捷键:
在这里插入图片描述
文本模式快捷键:
在这里插入图片描述
末行模式快捷键:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值