【Linux 系统篇(三)】入门基础指令详解(三)
大家好欢迎来到 huangjin007_ 的博客⭐个人主页huangjin007_文章收录专栏Linux 内功修炼手册(系统篇)总会有一些坚持能从冰封的土地里培育出十万朵怒放的蔷薇Linux 系统篇(三) —— 基础指令详解(三)文章目录Linux 系统篇(三) —— 基础指令详解(三)一、alias 指令二、grep 指令三、top 指令四、zip/unzip 与 rzsz指令4.1 zip 和 unzip —— Windows 用户最熟悉的压缩格式4.2 rzsz —— Windows 通过 XShell 传文件五、tar 指令六、bc指令七、uname指令八、提升效率的快捷键九、关机与重启shutdown —— 关闭系统十、扩展Linux 命令十一、Shell 究竟是什么11.1 操作系统的“外壳”11.2 一个形象的比喻结语一、alias指令有时候一个命令又长又难记比如ls -l --colorauto每次输入都费劲。使用alias可以为它创建别名用一个简短的名字代替一长串指令。基本用法alias别名原始命令注意等号两边不能有空格而且原始命令最好用单引号括起来防止特殊字符被提前解析。定义之后输入..就返回上一级目录。取消别名unaliasll二、grep指令grep能在文件或输入流中搜索匹配特定字符串的行并把它们打印出来。基本语法grep[选项]搜索字符串文件名如果不指定文件名grep会从标准输入读取数据因此它常跟管道|配合使用。常用选项-i忽略大小写。-n显示匹配行的行号。-v反向匹配只显示不包含该字符串的行。-r或-R递归搜索整个目录下的所有文件。-l只列出包含匹配内容的文件名不显示具体内容。-c统计匹配行的数量。三、top指令top命令提供了一个动态实时的系统状态界面类似于Windows 的任务管理器。你可以看到 CPU、内存的使用率以及哪些进程最消耗资源。启动与退出直接输入top就会进入一个全屏的交互式界面按q退出。四、zip/unzip与rzsz指令4.1zip和unzip—— Windows 用户最熟悉的压缩格式在 Linux 下虽然更流行tar.gz但zip格式因为与 Windows、macOS 天然兼容常用于跨平台传输。压缩zip[选项]压缩包名.zip 要压缩的文件或目录...常用选项-r递归处理将目录下的所有子文件和子目录一并压缩。压缩目录时几乎必须加这个选项。解压unzip压缩包名.zip-d目标目录-d指定解压到的目标目录。如果不加-d则解压到当前目录。4.2rzsz—— Windows 通过 XShell 传文件rz和sz并不是 Linux 标准工具但很多人会安装它们软件包名lrzsz。它们配合终端仿真软件如 XShell能实现直接在终端里上传和下载文件非常方便。安装Ubuntuapt install lrzsz -y上传在终端输入rzXShell 会弹出文件选择对话框选择文件后即可上传到服务器当前目录。下载输入sz 文件名就会将服务器上的文件下载到本地。五、tar指令核心参数速记ccreate创建打包文件。xextract解包。tlist列出包中文件不解包。z通过gzip 进行压缩或解压。文件后缀通常是.tar.gz或.tgz。j通过bzip2 进行压缩或解压。文件后缀通常是.tar.bz2。vverbose显示详细过程让你看到正在处理哪些文件。ffile必须放在参数最后紧接着文件名。-Cchange to directory解压时指定目标目录。详细示例示例一打包与压缩示例二查看压缩包内容不解包t操作会列出包内所有文件的路径和权限信息配合v可以看到详细信息。示例三解压到指定目录-C ./others表示先切换到这个目录然后再解压因此解压后的文件会出现在./others下面。如果没有-C解压到当前工作目录。示例四仅解压包中的某个文件先用-t查看包内文件找到想要的那个然后单独提取Linux 和 Linux 主机间传输压缩包生产环境中经常需要把一台机器上的打包文件传到另一台机器上。这时scp安全复制登场了。# 将本地包传到远程服务器的 /root 目录scpbackup.tgz root192.168.1.100:/root/# 从远程服务器下载包到本地当前目录scproot192.168.1.100:/root/backup.tgz ./六、bc指令bc是一款任意精度的计算器语言支持基本的算术运算、变量和简单的编程控制。也可以进入交互模式直接输入bc然后逐行输入表达式按CtrlD退出。七、uname指令uname能够显示当前操作系统的名称、版本、硬件架构等信息最常用的是uname -r查看内核版本。常用选项-a或--all显示全部信息包括内核名称、主机名、内核版本、硬件架构等。-r仅显示内核发行版号如5.15.0-91-generic。-m显示机器硬件架构如x86_64表示 64 位系统。-s显示内核名称默认是Linux。八、提升效率的快捷键Tab键 —— 命令和路径自动补全输入命令或文件路径的前几个字母按一下Tab系统会尝试自动补全。如果有多个匹配项按两下Tab就会列出所有可能选项。Ctrl C—— 中断当前程序当你运行了一个死循环程序或者某个命令卡住不动时按Ctrl C会向正在前台运行的程序发送中断信号让它立即停止。Ctrl D—— 退出或发送 EOF在终端里按Ctrl D表示输入结束EOF效果等同于输入exit退出登录 Shell或者关闭当前终端窗口。在交互式程序如bc中则代表正常退出。Ctrl R—— 搜索历史命令按下Ctrl R后输入关键词终端会反向搜索你过去执行过的命令。每按一次Ctrl R会跳到下一个更早的匹配项按回车直接执行按左右箭头可修改后再执行。上/下箭头直接浏览上一条或下一条历史命令。九、关机与重启shutdown—— 关闭系统shutdown[选项][时间][警告信息]常用选项-h将系统服务全部停止后关闭电源halt。shutdown -h now立即关机。-r重启reboot。shutdown -r 10 System will reboot in 10 minutes表示 10 分钟后重启并给所有在线用户发送警告。-c取消已经计划的关机或重启。云服务器红线在云环境中绝对不要随意关机! 云服务器设计为 7×24 小时不间断运行一旦通过命令行shutdown或halt你会直接失联必须去云控制台手动“启动”实例才能恢复。十、扩展Linux 命令为了让你的知识体系更完整这里按照功能将一些重要命令分类列出。安装和登录login,shutdown,halt,reboot,mount,umount,exit,last文件处理file,mkdir,grep,dd,find,mv,ls,diff,cat,ln系统管理df,top,free,quota,at,lp,adduser,groupadd,kill,crontab网络操作ifconfig,ip,ping,netstat,telnet,ftp,route,finger,nslookup安全相关passwd,su,umask,chgrp,chmod,chown,chattr,sudo,ps,who压缩归档tar,unzip,gunzip,unarj,mtools其它工具man,unencode,uudecode十一、Shell 究竟是什么上面我们一直在用各种命令这些命令到底是怎么被系统执行的呢这就不得不提 Linux 最核心的一层抽象Shell。11.1 操作系统的“外壳”严格来说我们说的“Linux”指的是内核Kernel。内核负责直接管理硬件、分配 CPU 时间、读写磁盘等等。但是普通用户不能直接和内核交流。一是因为太底层、太危险二是因为交互起来极不方便。于是Linux 在内核外面包了一层程序这一层就叫Shell外壳。Shell 的最基本角色是命令解释器它做两件事把你输入的人类可读的命令翻译成内核能懂的系统调用把内核的处理结果再翻译回人类可读的形式显示在屏幕上。这就好比你在餐厅点菜输入命令服务员Shell把菜单翻译给后厨Kernel做好后再把菜端给你输出结果。你无需知道后厨的细节而且就算你喊错菜名服务员也会提示你而不会让你直接冲进后厨乱搞。11.2 一个形象的比喻假如你是个害羞的程序员看上了村里漂亮的姑娘小花操作系统内核但又不好意思直接表白。于是你找来了媒婆王婆Shell。你告诉王婆“我想约小花去看电影”。王婆转身就去敲小花家的门把话转达给了小花。小花同意了王婆又跑回来告诉你“小花答应了今晚八点村口见”。整个过程你只和王婆沟通根本没有直接面对小花。王婆就是那个命令解释器保护了双方的安全与体面。对应到系统中用户 程序员Shell 王婆媒婆常见实现是bash、zsh等内核 小花操作系统核心这个比喻完美解释了为什么需要 Shell方便用户提供交互式界面无需写 C 语言调用内核。保护内核过滤非法操作避免用户无意或恶意破坏系统。结语今天的内容到这里就结束了希望你能有所收获~干货整理到手抖觉得有用的话赏个三连回回血__(:ᗤ」ㄥ)_ _