LinuxShell编程基础学习笔记

📅 2026/7/2 3:02:23
LinuxShell编程基础学习笔记
一、Shell基础知识1.Shell是Linux系统文本命令行交互界面CLI图形桌面出现前是唯一和Unix/Linux交互途径主流默认Shell为GNU bashDocker容器默认使用/bin/bash。2.登录系统访问CLI方式图形桌面登录需打开终端仿真器纯文本控制台用CtrlAltF系列按键切换Ubuntu按F7进入图形界面RHEL按F1。3.Shell提示符默认是$符号代表等待用户输入命令输入命令后回车执行。4.Tab自动补全输入文件/目录前缀按Tab可自动补全名称多匹配项会列出全部候选。5.man帮助手册man命令用于查询Linux命令官方手册man man查看man自身手册man -k 关键词可通过关键字模糊搜索命令。手册分区1代表可执行程序与shell命令2为系统内核调用3为程序库函数。手册操作空格整页翻页回车逐行滚动q键退出手册页面。二、Linux文件系统1.Windows与Linux路径核心区别Windows分多盘符路径分隔符为反斜杠\Linux只有单一虚拟根目录/无盘符路径分隔符使用正斜杠/。2.核心概念根目录/是整个文件系统起点系统第一块硬盘为根驱动器挂载点是虚拟目录下文件夹用于挂载U盘、额外硬盘等外设。Linux隐藏文件以点.开头默认ls命令不会展示。3.系统标准目录作用/home普通用户专属主目录格式/home/用户名/root超级管理员root的专属主目录/media、/mnt移动存储设备挂载目录/opt存放第三方软件包/proc、/sys存储硬件、进程实时信息虚拟文件/tmp临时文件目录系统重启内容清空/usr存放用户工具、程序、文档/var存放日志、缓存等频繁变动文件4.两种文件路径绝对路径从根目录/完整书写精准定位文件相对路径基于当前目录简写.代表当前目录..代表上级父目录。三、目录操作命令1.pwd打印当前工作目录切换目录前建议执行确认位置。2.cd切换目录cd 绝对路径 直接跳转指定完整目录cd 相对路径 跳转当前目录下子文件夹cd .. 返回上级目录cd ~或单独cd 直接回到用户主目录。shtu列出目录文件常用参数ls -F目录末尾添加/区分文件与文件夹ls -a显示所有文件包含.开头隐藏文件ls -l长格式输出展示文件类型、权限、所有者、大小、修改时间ls -R递归列出所有子目录内文件参数可组合使用如ls -alFR。ls -l输出字段说明首位d代表目录、-代表普通文件后续9位为读写执行权限数字是硬链接数量之后依次为文件所有者、所属用户组、文件字节大小、修改时间、文件名。ls支持通配符过滤文件?匹配单个字符*匹配任意多个字符[]匹配指定范围字符!用于排除字符。4.mkdir创建目录mkdir 目录名 创建单层文件夹mkdir -p 多级目录 自动创建所有缺失的父目录。5.rmdir仅能删除无内容的空目录目录存在文件时执行报错。6.rm删除文件/非空目录Linux无回收站删除内容无法恢复rm 文件名 删除单个文件rm -i 文件名 删除前弹窗确认rm -rf 目录名 强制递归删除整个目录高危命令谨慎使用。四、文件操作命令1.touch创建大小为0的空白文件仅修改已有文件时间戳不改动文件内容。2.cp复制文件/目录cp 源文件 目标文件 复制文件cp -i 源文件 目标路径 覆盖文件前提示确认cp -r 源目录 目标目录 复制完整文件夹及内部所有内容。3.mv移动文件或重命名文件同目录内执行mv为重命名跨目录执行mv为移动文件搭配-i参数覆盖文件前弹出确认提示。4.ln 文件链接硬链接ln多个文件名指向同一个inode节点删除其中一个链接不会删除原文件无法跨硬盘分区创建软链接ln -s类似Windows快捷方式存储源文件路径源文件删除后链接失效。五、查看文件内容命令1.file识别文件类型、文本编码、软链接指向的源文件。2.cat一次性输出文件全部内容适合小型文本cat -n 显示所有行行号cat -b 仅给非空文本行添加行号。3.more、less分页交互式浏览文件more仅支持向下翻页q退出less是more升级版支持上下滚动、文本搜索推荐优先使用。4.head查看文件开头内容默认展示前10行-n 参数自定义展示行数head -2 文件 查看文件前两行。5.tail查看文件末尾内容默认展示最后10行-n 参数自定义行数tail -3 文件 查看文件后三行tail -f 实时跟踪文件新增内容常用于监控系统日志。六、课后实操项目完整操作命令任务在用户主目录~完成LearningNotes学习笔记项目每步操作前执行pwd确认当前目录1.创建项目目录结构pwdmkdir LearningNotescd LearningNotespwdmkdir lectures references backupscd lecturespwd2.创建笔记文件并写入内容touch linux_basics.txt commands_cheatsheet.txtecho -e Linux Command Basics\ncd: Change directory\nls: List files and directories\npwd: Print working directory linux_basics.txtecho -e cat: Display entire file\nhead: Show first 10 lines\ntail: Show last 10 lines\nless: Interactive file viewer commands_cheatsheet.txt3.文件操作pwdcp commands_cheatsheet.txt ../references/command_reference.txtmv linux_basics.txt linux_fundamentals.txtcp linux_fundamentals.txt ../backups/touch commands_cheatsheet.txt4.查看文件内容pwdcat linux_fundamentals.txthead -2 ../references/command_reference.txttail -3 commands_cheatsheet.txtless ../references/command_reference.txt5.项目维护cd ../pwdtreerm references/command_reference.txttouch project_status.txttouch lectures/* references/* backups/* project_status.txt项目最终目录结构LearningNotes/project_status.txtlectures/commands_cheatsheet.txtlinux_fundamentals.txtreferences/backups/linux_fundamentals.txt七、核心命令总结目录操作pwd查看路径、cd切换目录、mkdir创建目录、rmdir删除空目录文件列表ls搭配-a/-l/-F/-R参数查看文件信息文件创建修改touch新建空文件、更新时间戳文件复制移动cp复制、mv移动/重命名文件删除rm删除文件/非空目录文件链接ln硬链接、ln -s软链接文件查看cat全量输出、less分页浏览、head查看开头、tail查看末尾帮助查询man查询命令手册man -k关键字检索命令辅助工具Tab自动补全、* ? []通配符批量筛选文件课后作业