SCENE / 001
返回札记NOTE / 学习笔记

Linux命令行实践:从man到管道

man手册怎么查,cp、mv、cat、less、head、tail怎么用,再用管道把它们串起来

#Linux#学习笔记#命令行#服务器
本文目录
  1. 先学会查:man
  2. 复制、移动、查看文件
  3. cp:复制
  4. mv:移动或重命名
  5. cat:直接输出文件
  6. 看长文件
  7. 管道
  8. 删文件要小心
  9. 来源
阅读记录0%
0%

前两篇都在讲概念,这篇开始动手:查手册、处理文件、用管道把命令连起来

先学会查:man

命令太多了,背不下来,不会就查man:

man man
man 1 printf
man 2 fork
man 3 printf

中间的数字是手册的章节,常用的几个:

章节 内容
1 普通用户命令
2 系统调用
3 C语言库函数
5 文件格式和配置文件
8 系统管理命令

printf就是个例子:Shell里有个printf命令,C标准库里也有个printf函数,man 1 printf查前者,man 3 printf查后者。如果提示没有手册,装一下man或man-pages包

复制、移动、查看文件

cp:复制

cp source.txt backup.txt
cp -r project project-backup

复制目录要加-r。怕覆盖掉已有文件就加-i,覆盖前会先问一句

mv:移动或重命名

mv draft.md notes.md
mv notes.md archive/

Linux没有单独的重命名命令,改名就是用mv把文件“移动”到同一个目录下的新名字

cat:直接输出文件

cat -n notes.md

-n会带上行号。短文件用cat看很方便,长日志直接cat会一下刷满屏幕,换下面的工具

看长文件

less可以翻页,也能搜索:

less server.log

进去之后/error往下搜,?error往上搜,n跳到下一个,q退出

head和tail分别看开头和结尾几行:

head -n 20 server.log
tail -n 20 server.log

两个一起用可以截中间某一段。比如要第516到520行,先取前520行,再取最后5行:

head -n 520 long.txt | tail -n 5

管道

竖线|把前一个命令的输出交给后一个命令当输入:

cat app.log | grep "ERROR"
ls -la | less
printf '%s\n' *.log | head -n 10

最常用的一个是查进程:先ps列出所有进程,再grep筛出想找的那个

ps aux | grep nginx

有个坑:管道只传标准输出,报错信息(标准错误)不会跟着过去。想一起传的话要用2>&1之类的重定向先合并

删文件要小心

rm删掉的文件不进回收站,rm -r、rm -f手一滑基本就找不回来了。删之前先确认位置和目标:

pwd
ls -la
rm -i target.txt

要是经常整理文件,可以先mv到一个自己建的临时目录,过几天确认没问题再清掉,比给rm套一堆别名简单

来源

本文为个人学习笔记,根据2301_80171004的《探索Linux命令行:从基础指令到高级管道操作的介绍与实践》提炼并重新组织,保留原文链接供进一步阅读

READING / FOCUSOFF

留言

评论区暂未开放;可先通过 RSS 或「关于」页联系。

站内搜索

输入关键词开始搜索