ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Linux命令不是背会的,是用会的:从目录到排障的实战路径

Linux命令不是背会的,是用会的:从目录到排障的实战路径 “哥我在网上翻了一份linux常用命令大全几百条背了一周上服务器还是不知道该从哪里查日志、看进程。”这种消息我隔三差五就会收到。不只是在校生很多工作后被迫接触Linux的开发、测试、运维同事也容易掉进同一个坑把Linux基础命令当成英语单词书来背。命令不是背会的是用会的。这篇文章我不打算给你罗列几百条命令而是带你走一遍我平时带新人入门的真实路径先认目录结构再操作文件然后学会组合命令接着理解权限和系统状态最后搞定常见报错。不管你是在虚拟机里装了个Linux发行版体验还是准备转运维、做嵌入式方向甚至只是为了面试时不被问到Linux基础题而发怵这篇内容都适合当第一课。文章里出现的每一条命令都是日常登录服务器后最高频使用的东西不整花活。1. 先搞清楚Linux的“房间布局”目录结构入门命令是工具目录结构是地图。工具再好没有地图也容易迷路。很多新手学了一堆命令依然不知道自己创建的文件去哪了、该去哪里看日志根子就在于对Linux的文件系统组织方式没有感知。我的理解方式是把整个Linux文件系统想象成一栋大楼根目录/就是大楼的入口大厅。你在楼里任何一个角落只要路径写全最后都能绕回大厅。和我以前用Windows时那种“C盘、D盘、E盘”的多根盘符完全不一样Linux只有一个根其他所有分区、挂载点都挂在这一个根下面。1.1 根目录下到底放了些什么刚打开终端时输入ls /你会看到一堆目录名。第一次见确实容易懵但它们的分工其实很规律。我把最常打交道的几个先挑出来目录作用生活化类比/home普通用户的家目录每个用户一个文件夹员工工位区/root管理员root用户的家目录老板办公室/etc系统配置文件集中地物业档案室/var日志、缓存、临时数据仓库和垃圾处理间/usr系统软件、共享资源公共资料室/tmp临时文件存放区前台临时接待区/bin、/sbin系统启动和运行必需的命令常备工具箱/dev设备文件设备开关面板/proc内核运行时的虚拟文件内存里的“体检报告”运行状态仪表盘/home是最贴近你日常操作的地方。通过常规方式创建的用户默认都会在 /home 下拥有一个以用户名命名的目录。你登录终端后默认就落在自己家里路径会显示成波浪号~。如果你执行cd不带任何参数也会直接回到这个家目录。很多初学者在服务器上绕了半天想“回家”其实就是敲一个不带参数的cd的事。/etc则是配置文件的天下。用户的账户信息在 /etc/passwd 里密码哈希存在 /etc/shadow主机名在 /etc/hostnameLinux发行版的软件源列表在 /etc/apt/sources.list。以后你想改系统配置就沿着“先到 /etc 找配置文件”这个思路走基本不会跑偏。/var是运维新手最先该记住的地方因为日志基本都在 /var/log 下。系统服务的运行记录、登录记录、内核日志全在这。曾有个同事跟我说服务器半夜异常重启查了半天没头绪最后翻了翻 /var/log/syslog看到内核报错信息才定位到磁盘块异常。没有 /var/log排障会变成大海捞针。/usr这个名字最容易误导刚接触Linux的人它和“user用户”没有直接关系更像是 Unix System Resources 的缩写。系统自带的大量软件、依赖库、文档都放在这里。而/usr/local是管理员自己编译安装软件的默认位置。有时候你明明安装了一个程序执行时却提示command not found一查才发现程序被装到了 /usr/local/bin而系统的可执行文件搜索路径 PATH 里没有包含这个目录。这个问题以后你会经常遇到。/proc值得单独说一句它不是磁盘上的真实目录而是内核在内存中虚拟出来的文件系统。想知道系统当前运行了哪些进程、CPU信息、内存使用情况在里面都能看到比如cat /proc/meminfo就能读取内存信息。新手不用深入理解但知道有这么个地方将来学Linux底层原理时会少很多疑惑。作为入门阶段你不需要把上表背下来先记住几个“常驻地”就行自己的家 /home/你的用户名系统配置 /etc日志 /var/log临时文件 /tmp。刚搬进一个新小区你不也是先记住自己家、物业办公室和快递柜的位置吗1.2 绝对路径与相对路径新手最容易绕晕的地方路径是Linux操作中最基础、也最容易被忽视的概念。判断方法就一句话以/开头的是绝对路径不以/开头的是相对路径。绝对路径从根目录开始数不管你现在在哪个目录写出来的路径都是同一套标准。比如/etc/nginx/nginx.conf不管你站在 /home 还是 /tmp这条路径指向的都是同一个文件。相对路径则从当前所在位置开始数你的位置不同同样的写法指向的东西可能就完全不一样。两个特殊目录要记牢.表示当前目录..表示上一层目录。给你个实际例子假设你现在身处/home/zhangsan/project/logs想回到/home/zhangsan。你可以直接cd /home/zhangsan也可以cd ../..。为什么是两个..因为 logs 上一层是 projectproject 上一层才是 zhangsan。很多新手在这里算错层级我的笨办法是每次 cd 完立刻执行pwd看一眼确认自己到底在哪。这不是多余动作我见过太多人凭感觉敲路径最后rm删错了目录。路径感这种东西前期宁可慢不要错。再给你一个能大幅降低路径输入错误概率的操作Tab补全。输入路径时按一次 Tab系统会自动补全当前唯一匹配的目录名或文件名如果有多个候选按两下 Tab 就会列出所有可能。这条“基建级”技巧几乎能帮你避开所有因手滑导致的路径拼写错误。用它替代“凭手气敲键盘”你会发现敲命令的失误率直线下降。还要提醒一点Linux的路径分隔符是斜杠/不是Windows的反斜杠\。从Windows切过来的同学复制网络教程里的命令时经常把反斜杠原样带过来结果直接报No such file or directory。这种错误几乎是每个双系统用户都会经历的“见面礼”。2. 从0到1第一课文件与目录的增删改查地图认完了可以开始动手了。这一节讲文件与目录的“增删改查”它们称得上日常使用频率最高的第一梯队命令。把这几个玩熟你至少能在终端里完成最基本的文件操作。2.1 ls与pwd先学会“看”和“确认位置”pwdprint working directory的翻译是“打印当前工作目录”。它功能简单但在实际操作中极其重要。我带过一个实习生在服务器上找不到自己刚创建的文件急得满头汗。我让他执行pwd发现他人正站在 /tmp 目录而文件建在 /home 下。所以说操作第一件事永远是先确认自己在哪。脚本里、排查链路里、定位问题时pwd都是那个帮你找到北的锚点。lslist用来列出目录内容。不带参数时直接展示当前目录下的文件。我建议你至少掌握这几个参数ls -l以长格式显示详细属性包括权限、属主、大小、修改时间ls -a显示全部文件包括以.开头的隐藏文件ls -h配合-l使用文件大小显示为 K、M、G 这种人类友好单位ls -t按修改时间从新到旧排序想找刚改过的文件直接用新手总喜欢直接ls -lha这没问题但建议先搞清楚每个字母为何存在。看一个ls -l的真实输出drwxr-xr-x 2 root root 4096 Feb 15 10:30 logs拆开读第一个字符d表示这是一个目录后面rwxr-xr-x是三组权限位2是硬链接数第一个root是文件属主第二个root是所属组4096是大小Feb 15 10:30是最后修改时间logs是名称。刚开始不用全懂但权限位那一组请先留个印象后面讲权限时还会回来找它。2.2 增删改查四件套mkdir、touch、cp、mv、rmmkdir是创建目录make directory。最常用的是-p参数它允许递归创建多级目录比如mkdir -p /home/zhangsan/test/logs。如果你不加-p而 test 目录还不存在系统会直接报错No such file or directory。加了-p系统会把中间缺少的父目录一路创建好。从入门阶段起我建议你就养成带-p的习惯能少碰很多次钉子。touch的用途有两个文件不存在时创建空文件文件已存在时更新它的修改时间。创建空文件这个场景最常见比如你调试时需要个空日志文件touch access.log一下就有了。很多服务在启动时要求日志文件存在用touch提前备好是基础操作。cp负责复制文件基本用法是cp 源文件 目标文件。复制整个目录必须加-rrecursive递归否则cp会拒绝操作并提示omitting directory。比如cp -r /home/zhangsan/test /home/zhangsan/test_backup。新手最容易漏掉-r看到报错提示里出现“目录”字样第一反应就应该是补上这个参数。mv同时承担了两个功能移动文件和重命名文件。在同一个目录下执行mv 旧名字 新名字效果就是重命名比如mv nginx.conf.bak nginx.conf——这在Linux中也是最常用的“重命名文件”方式。日常运维中还经常用mv把危险文件先挪到临时目录而不是直接删除相当于一个“缓刑期”给自己留点后悔余地。rm是删除。rmdir只能删空目录用途窄rm -r可以递归删除目录rm -f表示强制删除不询问。把这两个参数组合成rm -rf后威力巨大但要格外慎重。我个人的习惯是新手阶段尽量不用-rf的组合改成rm -ri让系统逐个文件确认等你有绝对把握了再考虑是否放开。删除操作没有后悔药谨慎不丢人。2.3 查看文件内容的四把刀cat、less、head、tail创建、复制、移动、删除都说完了再补全查看文件内容这块你日常的文件操作闭环就齐了。cat适合查看短小的文本文件它会一次性把整个文件内容输出到屏幕。比如cat /etc/hostname直接显示主机名。用cat -n还能顺便给每行加上行号看小配置文件或短代码时很方便。但如果文件很大比如几百兆的日志cat会把终端整个淹没这种场景就不该由它上场了。less是阅读长文本文件的正确姿势。它分页显示内容按空格键向后翻页按b往回翻按/输入关键字搜索按q退出。less不会把整个文件全部读进内存所以面对大日志文件也不卡。这里特别提醒新手q是退出键很多人进到less后不知道按什么直接被“卡”在里面最后急得把终端关了。你只要记住“进 less 按 q 能出来”这一条就少踩一个大坑。head和tail分别看文件的头部和尾部。head -n 5查看前 5 行tail -n 5查看最后 5 行。真正的运维利器是tail -f它常驻等待文件有新内容写入时实时显示在屏幕上非常适合盯着服务日志排查启动报错或访问异常。比如你刚启动一个服务想观察它有没有正常起来直接执行tail -f /var/log/syslog日志会一行行滚出来一目了然。要停止跟踪按CtrlC。2.4 重要提示rm -rf 的杀伤力与防呆习惯关于rm -rf得单独拎出来讲。Linux系统里没有Windows那种“回收站”概念rm删除的文件几乎没有任何低成本恢复手段。哪怕你只是误删了一个配置也可能导致服务直接起不来然后就要查备份、翻快照甚至最后只能重新部署。所以请务必养成两个习惯。第一执行删除前先ls看一眼当前目录确认自己在哪、准备删什么。第二重要数据优先mv到 /tmp 或专门的 trash 目录而不是直接rm。老手说的“rm -rf 不删库”其实就是劝人敬畏这个命令。还有一个特别容易踩的坑通配符误删。比如你想删除 /usr 目录下所有 tmp 开头的文件不小心敲成rm -rf /usr/* tmp中间多了个空格意义完全变了——它会删除 /usr 下的所有内容再加上当前目录下的 tmp 文件。这种事故很多而且真的发生过。所以使用通配符时我有一条铁律先ls看通配符会匹配到哪些文件确认无误后再执行删除。3. 从“敲命令”到“组合命令”管道、重定向与文本过滤前面学的还只是单个命令的单打独斗。真正让Linux变得强大的是组合——把几个简单命令拼在一起完成一个复杂任务。而组合的底层核心就是重定向和管道。3.1 重定向把输出从屏幕收进文件程序运行时会输出结果默认打在屏幕上。但你可以把输出“转移”到文件里这就是重定向。Linux程序有两个输出通道标准输出stdout和标准错误stderr。可以把它们想象成两根管道一根输出正常信息一根输出错误信息。默认两根管道都接到屏幕上但你可以用把标准输出送进文件用2把标准错误送进文件。最简单的例子执行ls / root_dir_list.txt根目录下的文件名列表就会被写入文件。再执行cat root_dir_list.txt就能看到刚才输出的内容。如果你想把内容追加到文件末尾而不是覆盖原文件要用。这俩符号长得像但意义不同会先清空文件再写入只在末尾追加。新手在这里翻车的频率极高——本想把日志追加进去结果用了旧日志全部被清空追悔莫及。记一句口诀追加用双箭头覆盖用单箭头。还有一个很有趣的设备文件叫/dev/null大家称它为“黑洞”。所有重定向到它里面的数据都会被丢弃。当你不关心某条命令的输出时可以把结果扔进黑洞比如command /dev/null 21。这串内容的含义是标准输出和标准错误全部丢弃不要显示。以后在网上看到这串“经典代码”知道它的底层逻辑记忆会轻松很多。3.2 管道把上一个命令的结果交给下一个命令管道符是竖线|。它的作用是把左边命令的标准输出作为右边命令的标准输入形成一条“流水线”。左边是原料右边是下一道工序。看几个常见例子ls /usr/bin | head -5列出 /usr/bin 下的文件名但只取前 5 条。ps aux | grep nginx在进程列表里搜索 nginx 相关进程。cat access.log | grep 404 | wc -l统计日志中出现 404 的次数。这里有个小现象要提醒你ps aux | grep nginx的输出里往往还会多出一行grep nginx自己。因为 grep 本身也是进程它也会被 ps 列出来。你第一眼看到这行不用慌它只是搜索进程本身。想看出更干净的结果可以使用pgrep nginx或者ps aux | grep nginx | grep -v grep。管道的精髓在于每个命令只做一件小事但通过管道可以把很多小事串成一条完整流水线。这是Unix设计哲学中最迷人的地方。我建议你从现在开始遇到网上那些看着很复杂的命令组合不要慌着复制先尝试拆解前面那部分单独执行看输出是什么再交给后面那部分看结果发生了什么变化。拆得多了你就慢慢拥有阅读“大神命令”的能力了。3.3 grep与find两个最值钱的查找命令grep和find是新手最容易混淆的一对。先记结论grep 搜的是文件里面的内容find 搜的是文件本身的名字。一个管“里面”一个管“外面”。grep的基本用法是grep 关键字 文件名匹配到的行会打印出来。加-n可以显示行号定位更精准。比如grep -n error /var/log/syslog就能在系统日志里找到所有出现 error 的行。其他常用参数再补几个-i忽略大小写-v反向匹配显示不包含关键字的所有行-r递归搜索目录下的所有文件grep不只针对文件也能过滤标准输入。配合管道使用时它威力更大比如ps aux | grep nginx就是最经典的组合。find则是按文件名字、类型、大小、修改时间等属性去文件系统里找文件。举个例子find /etc -name nginx.conf是在 /etc 下按名字精确查找。find /var/log -type f -name *.log找出 /var/log 下所有扩展名是 .log 的普通文件。find /home -mtime -3找出3天内修改过的文件。find / -size 500M找出所有大于500MB的文件磁盘清理时特别好用。实际排查问题时这三兄弟经常配合先用find确认文件在哪再用grep分析文件内容最后用tail -f盯着实时变化。比如说你发现nginx服务异常先find / -name nginx.conf找到配置文件再grep -n error nginx.conf看配置里有没有问题再tail -f /var/log/nginx/error.log看实时报错。一整套排查链路就打通了。4. 权限、用户与系统状态基础命令进阶实战前几节已经把日常文件操作和组合命令讲完了。接下来是新手最容易被绊倒的地方——权限和用户。很多Permission denied报错都是因为没理解这一节的内容。再补上查看系统状态的几个命令你就能独立登录一台服务器做基础巡检了。4.1 读懂权限位r、w、x三位一体的逻辑回到前面ls -l输出的第一列drwxr-xr-x。拆开看第一个字符表示文件类型d是目录-是普通文件l是软链接。后面9个字符分成3组每组3个分别对应文件属主owner、属组group和其他人others的权限。三组里出现的字符是r、w、x含义分别是读read、写write、执行execute。用刚才的例子来说rwxr-xr-x表示属主拥有读、写、执行全部权限属组拥有读和执行权限但没有写权限其他人同样只有读和执行权限。权限不为“全有”或“全无”而是可以精确组合。工程上更常用的权限表达方式是数字。规则很简单读r记作 4写w记作 2执行x记作 1。rwx就是 4217r-x就是 4015r--就是 4。于是常见的chmod 755就很好理解了属主拥有 7rwx属组拥有 5r-x其他人也是 5r-x。比如你搞了一个部署脚本deploy.sh想让它可执行执行chmod 755 deploy.sh即可。这里要特别提醒新手注意目录的x权限。目录的r权限表示你能列出这个目录里有哪文件名x权限表示你能进入这个目录。只有r没有x你虽然能看到文件名但执行cd进不去。配置网站目录或共享目录时这个细节极其容易把人卡住报错信息还很晦涩。权限检查工具也顺手记下id查看当前用户的 uid 和所属组whoami直接显示当前用户名。收到 Permission denied 时先想清楚自己是不是该有这个权限再决定下一步。4.2 用户与用户组新建用户、切换身份、sudoLinux 是一个典型的多用户系统。日常需要添加用户时用useradd或adduser。在 Debian/Ubuntu 系里adduser更“傻瓜化”它会帮你创建家目录还会一步步引导设置密码useradd更原始、参数更细。如果你用useradd我建议至少带上-m创建家目录带上-s /bin/bash指定登录 shelluseradd -m -s /bin/bash dev创建完成后再执行passwd dev设置密码这个用户就能用了。很多新手添加用户后忘了创建家目录导致用户登录后连自己的目录都没有出现一堆怪问题。所以“建了用户就顺手建家目录”是个值得养成的好习惯。用户建好之后关键在于权限的切换方式。sudo是最常用的临时提权入口前提是当前用户被加入了 sudo 组。比如重启nginx服务时执行sudo systemctl restart nginx。还有一个命令是su它直接切换用户比如su - root彻底切换到 root 身份并载入 root 环境su - zhangsan切换到 zhangsan。sudo和su的本质区别在于sudo只是临时以其他用户身份执行当前这一条命令切换完还是你自己su则是整个会话换人。日常运维中能用sudo就别用su尤其是别动不动就永久切到 root 操作——root 误操作代价实在太大我一个老同事都因为rm手误导致过生产事故。另一个常见坑是“当前用户不在 sudoers 列表里”报错类似user is not in the sudoers file。这不是系统故障只是说明当前用户没有特权。解决方式是用 root 身份把用户加入 sudo 组在 Debian/Ubuntu 中就是usermod -aG sudo dev。但我劝你慎重加组遵循最小权限原则谁能干多少活就给多少权限。不然哪天某个用户手滑执行了rm -rf你都不知道该怪谁。4.3 系统状态查看进程、内存、磁盘前面是文件和权限再往上走一步就是上服务器做基础巡检的必备技能进程、内存、磁盘三件套。查看进程最常用的是ps aux。它能显示进程的 PID、CPU占用、内存占用、启动用户、命令路径等关键信息是排查“服务到底跑没跑”时的第一选择。配合管道ps aux | grep java可以快速定位 Java 相关进程。如果你想知道系统整体负载和实时占用情况用top。它类似Windows的任务管理器动态刷新显示CPU、内存以及占用最高的进程。top里按M按内存占用排序按P按CPU占用排序按q退出。判断“服务器是不是卡了”不要凭感觉直接top看 load average 和最高占用进程。处理进程的命令是kill。kill 10523是给 PID 为 10523 的进程发送默认终止信号但有些进程对这个信号置之不理这时候需要kill -9 10523强制终止。区别在于不带-9时系统发送的是信号15让进程有收尾和保存数据的机会带-9发送的是信号9直接终结不留情面。能不用-9就不用-9因为强制终止可能导致数据丢失或子进程变成孤儿。如果连kill -9都没反应通常说明进程陷在不可中断的内核态这时就得查底层原因了不是基础命令能解决的范畴。内存和磁盘的检查命令也很简单free -h以人类可读方式显示内存总量、已用、剩余、缓存等信息df -h查看各分区的容量和占用率是判断“磁盘是不是满了”的直接依据。磁盘一旦写满很多服务会陷入诡异的半死不活状态——日志写不进、数据库拒绝连接、临时文件创建失败。所以养成分区巡检的习惯非常必要。磁盘满了之后定位大文件是下一步。du -sh /var查看某个目录的总大小du -sh /var/log/*查看 log 下每个子项的大小。配合管道排序把“磁盘杀手”揪出来du -sh /var/log/* | sort -h加sort -h的作用是按人类可读的单位K、M、G排序最后几行就是最大的文件。定位到具体文件后先确认它是不是正在被服务占用再决定怎么处理。删文件这件事多确认一遍永远不亏。5. 新手实操中最高频的10个坑与排查技巧这一部分是我最希望你收藏的内容。下面这些报错和弯路全部来自真实的Linux使用现场不是网上复制粘贴来的“理论错误集”。它们几乎覆盖了新手期的日常卡点。5.1 常见错误速查表报错或现象常见原因解决方法bash: xxx: command not found命令未安装或命令所在目录不在PATH环境变量里先which xxx确认是否存在不存在则安装对应软件包路径不对则用完整路径执行Permission denied权限不足常见于普通用户访问 root 目录或执行无执行权限的脚本ls -l确认属主和权限需要提权时用sudo脚本缺执行权限就chmod x 文件名No such file or directory路径拼写错误、大小写不匹配、文件名带空格未转义用 Tab 补全代替手敲带空格的文件用引号包裹或反斜杠转义进入 less/vim 后不知道怎么退出界面卡在分页器或编辑器中less 按qvim 先按Escwq保存退出q!不保存退出用 覆盖了原文件重定向符号用错本意是追加却用了覆盖追加时用若已覆盖只能从备份恢复sudo: command not found极简系统没有安装 sudo或当前用户不在 sudo 组su -切换到 root 后安装 sudo再确认用户是否在 sudoers 中执行脚本提示“权限不够”脚本没有 x 执行权限常见于下载的 .sh 文件确认脚本内容无异常后chmod x 文件名或直接用bash 文件名运行打开文件提示 Read-only file system文件系统只读通常由磁盘满或挂载参数导致先df -h检查磁盘空间确认挂载方式必要时重新挂载找不到刚创建的文件当前工作目录和你以为的目录不一致用pwd确认位置用find / -name 文件名按名定位Windows 里编辑的脚本在Linux下执行异常Windows 换行符 CRLF 影响 bash 解析sed -i s/\r$// 文件名去回车或使用dos2unix转换这里面最容易被忽视的是最后一条。给新手提个醒你在 Windows 记事本里写了一个 shell 脚本传到 Linux 服务器上执行报的都是些“莫名其妙的语法错误”。真实原因是 Windows 文本文件的换行符是\r\nLinux 只认\n多出来的回车符会让 bash 解析时出现诡异问题。解决方法就是对文件做一次“换行符清洗”sed -i s/\r$// 文件名如果系统装了dos2unix一句dos2unix 文件名也能搞定。自从我学会这个清洗命令这类“幽灵报错”再也没能坑到我。还有 vim 退出问题也值得多提两句。新手在 vim 里按下i进入编辑模式写完内容想退出却不知道该按什么。记住这个流程先按Esc退出编辑模式再输入:wq保存并退出如果只想放弃修改退出输入:q!。很多新手问我“vim 卡死了怎么办”其实不是你卡死了是模式切换没搞明白。5.2 提升效率的三个小习惯Tab补全、history、man第一部分讲路径时提到过 Tab 补全这里再强调一次因为它是整个终端操作里性价比最高的一项习惯。命令名可以补全文件名可以补全很多工具的参数也能补全。我见过一个同学想查看 Python 版本手滑敲成了pyhton --version结果报command not found后一脸懵。如果他用 Tab 补全可能根本不会出现这种低级错误。第二个习惯是善用history。输入history系统会把你敲过的命令全部列出来。想重新执行某条命令不用重新敲直接!加历史行号即可。比如 history 显示第 120 条是ls /var/log你敲!120就能再执行一次。更顺手的是组合键CtrlR输入一个关键字就能从历史命令中反向搜索到最近匹配的一条直接回车复用。它帮你省掉的不只是打字时间还有反复回忆“刚才那条命令怎么写的”的脑力消耗。第三个习惯是使用man。每个命令都有官方手册man ls、man grep、man find都是Linux自带的说明书。新手看 man 手册不要从头读到尾那是灾难。先看NAME和SYNOPSIS两段快速了解命令用途和参数结构。再用/搜索关键字比如执行man ls后按/输入-time就能直接跳到关于-time参数的说明区。学会了这个用法查文档的效率翻倍。再送你一个私藏技巧alias别名。给高频命令起一个短名字比如alias llls -alF以后输入ll就等于执行ls -alF再比如alias dfhdf -h。把别名写进~/.bashrc重新登录后依然有效。你不需要一开始定义很多别名但请记住一个感觉同一句命令如果重复输入超过三次就值得考虑给它加个别名。5.3 一点个人建议命令不是背会的是“用”会的我带新人这些年见到过两种极端情况一种是把命令大全打印出来天天背背完还是不会用另一种是遇到什么都要开口问不愿意亲手试错。我的建议是每周给自己布置几个“小任务”用任务驱动学习而不是用记忆驱动。第一天在 /tmp 下创建三层目录用touch建三个文件再用ls -l查看权限第二天把其中一个文件用mv改名为带日期后缀的新文件复制到 /home再删除临时目录第三天用tail -f /var/log/syslog监控日志同时手动触发某个操作观察日志的实时变化。三天下来你对前面四节里所有命令的熟练度一定比“死背一整天命令大全”要高得多。还有一个很管用的小技巧是“带着问题去查”。完全没有需求的环境下背命令很难留下印象一旦你遇到真实问题——磁盘满了、服务起不来、目录进不去——回头再查命令一次就能记住。Linux入门这件事本质不是记忆问题是练习问题。你多敲一次就比别人多稳一分。刚开始可以慢一点路径敲完多按两下pwd确认、删除之前多执行一次ls检查这些“多余”动作在你养成肌肉记忆之前都是最可靠的保险绳。
返回列表