man
语法:man [ 选项 ] 命令
man手册分为9章
- 是普通的命令
- 是系统调⽤,如open,write之类的(通过这个,⾄少可以很⽅便的查到调⽤这个函数,需要加什么 头⽂件)
- 是库函数,如printf,fread4是特殊⽂件,也就是/dev下的各种设备⽂件
- man printf # 查看 printf 指令 ( 没错, printf 也是⼀个指 令 2 3 4 5 6 7 )
- man fork 去 2 号⼿册查找
- man 2 frok # 查看系统调⽤
- man 3 printf # 查看 C 库函数
- man 7 signal # 查看变量
- man 7 environ
- man man # 查看 man ⼿册⾃⼰
重定向
Linux系统下,一切皆文件。
向显示器打印(向显示器文件进行写入)echo "hello" #显示hello,将hello向显示器文件写入
从键盘scanf读取数据(从键盘文件中读取数据)
#输出重定向,本来是要写在显示器文件中,现在写入到了hello.txt #1.没有hello.txt,先新建文件 #2.写入时先清空原内容,再写入新内容 echo "hello" > hello.txt #把echo输出的内容写入到了hello.txt ls #显示hello.txt cat hello.txt #显示hello,cat会显示文件内容(适合小文件,文件过长会导致刷屏) #输出重定向用法:清空指定的文件 >hello.txt #追加重定向 echo "aaaaaaaa" >> hello.txt #显示aaaaaaaa aaaaaaaa ,在原来的内容后追加新内容 #输入重定向 cat < hello.txt #把cat的标准输入,从“键盘”重新指定成了“hello.txt文件”:把hello.txt中文件输出终端本身也是文件,验证:ls -l /dev/pts/*
cp指令
普通文件拷贝:cp src dst
目录拷贝:cp -rf filea fileb #递归强制拷贝该目录下所有文件
mv命令
移动⽂件或者将⽂件改名
mv src dst
mv hello.txt /tmp/ # 把 hello.txt 移动到 /tmp/ 目录下 mv hello.txt world.txt # 把 hello.txt 重命名为 world.txt mv /tmp/hello.txt . # 把 /tmp/hello.txt 移动到当前目录 mv dir1 dir2 # 如果 dir2 不存在:把 dir1 重命名为 dir2 # 如果 dir2 是已存在目录:把 dir1 移动到 dir2/dir1 mv a.txt b.txt dest/ # 把多个文件移动到 dest/ 目录,dest/ 必须存在
cat 指令
语法: cat [ 选项 ] [ ⽂件 ] 功能:查看⽬标⽂件的内容
-n对输出的所有⾏编号
tac指令,反向查看内容
more指令
语法: more [ 选项 ]
功能:more命令,功能类似cat
more -10 temp.txt # -n 指定输出⾏数,q退出more
less指令
能前后翻页、能双向搜索、且查看前不加载整个文件。
适合查看大文件(比如日志文件)但使⽤less可以随意浏览⽂件,⽽more仅能向前移动,却不能向后移动,⽽ 且less在查看之前不会加载整个⽂件。
less [参数] 文件
more less 翻页 只能向后 可前后翻(PageUp/PageDown) 搜索 只能向下 可向下也可向上 N 显⽰每⾏的⾏号 less -n temp.txt
/字符串:向下搜索“字符串”的功能 less /1994 temp.txt
?字符串:向上搜索“字符串”的功能less ?1994 temp.txt
head与tail
head temp.txt #默认打印其相应⽂件的前10⾏
head -5 temp.txt #显示前五行
tail temp.txt #默认打印其相应⽂件的后10⾏
tail -5 temp.txt #打印后5⾏
管道
把前一个命令的输出直接作为后一个命令的输入,让多个命令像流水线一样串联协作。
date命令
date +%Y-%m-%d #等价于date +%F,显示当前时间2026-09-11
date +%s #显示当前时间戳,从 1970 年1月1日 00:00:00 UTC 起经过的秒数,是一个能唯一标识某个时间点的整数