一、什么是shell命令行CLI1.图形桌面出现前操作unix/Linux唯一方式是命令行CLI仅支持文本输入输出。物理控制台切换CtrlAltF1/F7Ubuntu图形界面F7图形桌面内使用打开终端仿真器调出shell2.Bash Shell基础1普通用户提示符$代表等待输入命令2输入指令后回车执行3Tab键自动补全输入文件/命令前缀按Tab自动补全名称多匹配项连续按Tab列出全部候选。二、man手册命令官方查询工具忘记命令参数、用法直接用man查看系统官方手册是Linux最核心的查询工具基础用法man is 查看is命令手册man man 查看man命令自身手册man -k密码 按关键字搜索相关命令模糊查找手册操作快捷键a.空格整页向下翻b.回车逐行向下滚动c.上下箭头上下单行浏览q退出手册页面手册分区说明1.可执行程序/shell命令2.内核系统调用3.程序库函数三、Linux虚拟文件系统和Windows最大区别Windows路径特点1分盘符C盘、D盘每个磁盘独立目录树2路径分隔符反斜杠Linux虚拟目录核心规则1.无盘符统一单一根目录/所有磁盘都挂载到根目录下的文件夹2.路径分隔符正斜杠/3.挂载点额外硬盘、u盘等设备映射到根目录下某个文件夹对外统一展示为一个目录树。核心体统目录作用速查表四、目录切换与路径规则1.两种路径写法1绝对路径从根/开始完整路径任何位置都能使用2相对路径基于当前目录不用写完整前缀cd lectures 直接进入当前目录下lectures文件夹2.目录特殊符号1.单点符代表当前目录2…双点符代表上一级父目录五、ls目录查看命令ls列出当前目录所有文件或者文件夹支持大量参数组合ls -F 区分文件/文件夹文件夹末尾自动加 /ls -a 显示隐藏文件Linux以 . 开头的文件为隐藏配置文件ls -R 递归列出所有子目录内容ls -l 长格式展示权限、所有者、大小、修改时间ls -FR #参数组合递归区分文件类型ls -l长格式字段解读drwxrwxr-x 5 zhangzy zhangzy 243 6月13 15:51 h文件类型 d 目录、 - 普通文件三段权限所有者/所属组/其他用户读写执行权限硬链接数量文件所有者用户名文件所属用户组文件大小字节最后修改时间文件/目录名称通配符过滤文件匹配筛选文件批量操作必备*匹配任意长度任意字符匹配单个任意字符[ ] :匹配指定区间字符!将不需要的内容排除在外? * [] ! 等符号称为元字符通配符六、文件基础操作命令1.创建空文件touchtouch test.txt 创建大小为0的空文件touch test.txt 若文件已存在仅更新文件时间不修改内容2.复制cpcp源文件 目标路径cp -i a.txt b.txt 覆盖前弹窗询问确认防止误覆盖3.移动/重命名mvmv old.txt new.txt 同目录重命名mv file.txt ./references 移动文件到指定目录mv -i 覆盖前提醒4.删除rm无回收站谨慎操作rm file.txtrm -i file.txt 删除前确认rm -f file.txt 强制删除无提示rm -rf 目录名 强制删除非空目录递归删除所有内容七、目录操作命令1.创建文件夹mkdirmkdir lecturesmkdir -p lectures -p自动创建多级父目录2.删除文件夹rmdir空目录仅删除无任何文件的空文件夹非空目录直接使用rm -rf目录名 递归强制清空删除八、查看文件内容1.cat一次性打印全部内容cat linux_basics.txtcat -n test.txt 所有行显示行号cat -b test.txt 仅非空行显示行号2.more/less:分页浏览大文件more基础分页空格翻页q退出只能向下翻lessmore升级版支持上下滚动关键词搜索3.head查看文件开头默认前10行head -6 test.txt 查看前6行4.tail查看文件末尾默认后10行tail -5 test.txt 查看最后5行tail -f log.txt 实时追踪文件新增内容5.file命令判断文件真实类型编码链接指向不依赖后缀名九、课后练习1.回到用户主目录cd~2.创建项目结构1一键创建项目根目录三个子目录mkdir -p LeaningNotes/{lectures,references,backups}-p 参数可以自动诸暨创建不存在的父目录大括号实现批量创建子文件夹2切换到lectures目录cd LeaningNotes/lectures3.创建和编辑笔记1创建两个空文件touch linux_basics.txt commands_cheatsheet.txt2向Linux_basics.txt写入内容cat linux_basics.txt EOFLinux Command Basicscd: Change directoryls: List files and directoriespwd: Print working directoryEOF4.向commands_cheatsheet.txt写入内容cat commands_cheatsheet.txt EOFcat: Display entire filehead: Show first 10 linestail: Show last 10 linesless: Interactive file viewerEOF4.文件操作1复制文件并重命名到referencescp commands_cheatsheet.txt …/references/command-reference.txt2重命名文件mv linux-basics.txt linux_fundamentals.txt3备份文件到backupscp linux_fundamentals.txt …/backups/4更新时间戳不修改内容touch commands_chestsheet.txt5.查看和分析文件内容1查看linux_fundamentals.txt的内容cat linux_fundamentals.txt(2)查看commands_reference.txt前2行head -2 …/references/command_refernce.txt3查看commands_cheatsheet.txt 后3行tail -3 commands_cheatsheet.txt4交互式浏览command_refence.txtless …/references/command_reference.txt6.项目维护1切换到项目根目录cd …/2列出完整项目结构ls -R3删除references 内command_reference.txtrm references/command_reference.txt4根目录新建空文件project_status.txttouch project_status.txt5更新项目内所有文件访问时间find . -type f -exec touch{} ;
Linuxshell编程基础课堂笔记+课后练习
发布时间:2026/7/2 12:35:16
一、什么是shell命令行CLI1.图形桌面出现前操作unix/Linux唯一方式是命令行CLI仅支持文本输入输出。物理控制台切换CtrlAltF1/F7Ubuntu图形界面F7图形桌面内使用打开终端仿真器调出shell2.Bash Shell基础1普通用户提示符$代表等待输入命令2输入指令后回车执行3Tab键自动补全输入文件/命令前缀按Tab自动补全名称多匹配项连续按Tab列出全部候选。二、man手册命令官方查询工具忘记命令参数、用法直接用man查看系统官方手册是Linux最核心的查询工具基础用法man is 查看is命令手册man man 查看man命令自身手册man -k密码 按关键字搜索相关命令模糊查找手册操作快捷键a.空格整页向下翻b.回车逐行向下滚动c.上下箭头上下单行浏览q退出手册页面手册分区说明1.可执行程序/shell命令2.内核系统调用3.程序库函数三、Linux虚拟文件系统和Windows最大区别Windows路径特点1分盘符C盘、D盘每个磁盘独立目录树2路径分隔符反斜杠Linux虚拟目录核心规则1.无盘符统一单一根目录/所有磁盘都挂载到根目录下的文件夹2.路径分隔符正斜杠/3.挂载点额外硬盘、u盘等设备映射到根目录下某个文件夹对外统一展示为一个目录树。核心体统目录作用速查表四、目录切换与路径规则1.两种路径写法1绝对路径从根/开始完整路径任何位置都能使用2相对路径基于当前目录不用写完整前缀cd lectures 直接进入当前目录下lectures文件夹2.目录特殊符号1.单点符代表当前目录2…双点符代表上一级父目录五、ls目录查看命令ls列出当前目录所有文件或者文件夹支持大量参数组合ls -F 区分文件/文件夹文件夹末尾自动加 /ls -a 显示隐藏文件Linux以 . 开头的文件为隐藏配置文件ls -R 递归列出所有子目录内容ls -l 长格式展示权限、所有者、大小、修改时间ls -FR #参数组合递归区分文件类型ls -l长格式字段解读drwxrwxr-x 5 zhangzy zhangzy 243 6月13 15:51 h文件类型 d 目录、 - 普通文件三段权限所有者/所属组/其他用户读写执行权限硬链接数量文件所有者用户名文件所属用户组文件大小字节最后修改时间文件/目录名称通配符过滤文件匹配筛选文件批量操作必备*匹配任意长度任意字符匹配单个任意字符[ ] :匹配指定区间字符!将不需要的内容排除在外? * [] ! 等符号称为元字符通配符六、文件基础操作命令1.创建空文件touchtouch test.txt 创建大小为0的空文件touch test.txt 若文件已存在仅更新文件时间不修改内容2.复制cpcp源文件 目标路径cp -i a.txt b.txt 覆盖前弹窗询问确认防止误覆盖3.移动/重命名mvmv old.txt new.txt 同目录重命名mv file.txt ./references 移动文件到指定目录mv -i 覆盖前提醒4.删除rm无回收站谨慎操作rm file.txtrm -i file.txt 删除前确认rm -f file.txt 强制删除无提示rm -rf 目录名 强制删除非空目录递归删除所有内容七、目录操作命令1.创建文件夹mkdirmkdir lecturesmkdir -p lectures -p自动创建多级父目录2.删除文件夹rmdir空目录仅删除无任何文件的空文件夹非空目录直接使用rm -rf目录名 递归强制清空删除八、查看文件内容1.cat一次性打印全部内容cat linux_basics.txtcat -n test.txt 所有行显示行号cat -b test.txt 仅非空行显示行号2.more/less:分页浏览大文件more基础分页空格翻页q退出只能向下翻lessmore升级版支持上下滚动关键词搜索3.head查看文件开头默认前10行head -6 test.txt 查看前6行4.tail查看文件末尾默认后10行tail -5 test.txt 查看最后5行tail -f log.txt 实时追踪文件新增内容5.file命令判断文件真实类型编码链接指向不依赖后缀名九、课后练习1.回到用户主目录cd~2.创建项目结构1一键创建项目根目录三个子目录mkdir -p LeaningNotes/{lectures,references,backups}-p 参数可以自动诸暨创建不存在的父目录大括号实现批量创建子文件夹2切换到lectures目录cd LeaningNotes/lectures3.创建和编辑笔记1创建两个空文件touch linux_basics.txt commands_cheatsheet.txt2向Linux_basics.txt写入内容cat linux_basics.txt EOFLinux Command Basicscd: Change directoryls: List files and directoriespwd: Print working directoryEOF4.向commands_cheatsheet.txt写入内容cat commands_cheatsheet.txt EOFcat: Display entire filehead: Show first 10 linestail: Show last 10 linesless: Interactive file viewerEOF4.文件操作1复制文件并重命名到referencescp commands_cheatsheet.txt …/references/command-reference.txt2重命名文件mv linux-basics.txt linux_fundamentals.txt3备份文件到backupscp linux_fundamentals.txt …/backups/4更新时间戳不修改内容touch commands_chestsheet.txt5.查看和分析文件内容1查看linux_fundamentals.txt的内容cat linux_fundamentals.txt(2)查看commands_reference.txt前2行head -2 …/references/command_refernce.txt3查看commands_cheatsheet.txt 后3行tail -3 commands_cheatsheet.txt4交互式浏览command_refence.txtless …/references/command_reference.txt6.项目维护1切换到项目根目录cd …/2列出完整项目结构ls -R3删除references 内command_reference.txtrm references/command_reference.txt4根目录新建空文件project_status.txttouch project_status.txt5更新项目内所有文件访问时间find . -type f -exec touch{} ;