Linux探秘坊-------1.系统核心的低语:基础指令的奥秘解析(2)

7.man指令(重要)

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是

man 语法: man [选项] 命令

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找

解释一下,面手册分为8章:(注意!一旦查找到,就不会继续往下查

  • 1普通的命令

  • 2系统调用 ,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文

    件)

  • 3库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件

举例说明:man printf

1.man 1 printf (从第一条开始查 ) 和
man printf (从默认位置开始查 )输出结果一致

2.man 3 printf (跳过前两条,从第三条------库函数中查询)

8.cp指令(重要)

  • 语法:cp [选项] 源文件或目录 目标文件或目录

  • 功能 : 复制文件或目录

  • 说明:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息

常用选项:

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
  • -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

小知识:

1.echo指令:将指令后的内容以字符串形式打印(默认打印到显示器)
2.echo hello world > log.txt(输出重定向
  ">"符号可以把原本打印至显示器的路径改为 `打印至特定文件`

(如果打印至的文件不存在,则会在当前路径下创造一个同名文件 )

(如果存在则会 先清空,再写入数据

3. > log.txt(相当于清空文件
4.echo hello world >> log.txt(连续输入,不清除原文件内容

cp指令使用实例:

1.cp src dst

将log.txt拷贝至上一层目录(原先的log.txt依然存在

2.cp -rf src_dir dst_dir (src_dir为树型结构,即存在子目录)

-r:代表递归方式
-f : 代表强制执行

3.cp src dst_dir/新的名称

d1拷贝至前一个目录,并改名为dd1

9.which指令(重要)

which指令可以简略介绍其他指令

举例说明(which ls)

    1. alias------别名 ,意思是ls是 由ls(原来的指令)自动填充颜色 组成的
    1. /usr/bin/ls 指的是 ls(原来的指令)所在的位置

分别使用ls和ls(原来的指令)的效果

10.mv指令(重要)

mv命令是move的缩写,可以用来 移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。

  • 语法 : mv [选项] 源文件或目录 目标文件或目录
  • 功能:
  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

常用选项:

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就 会询问是否覆盖

1.mv src dst_dir

将src直接转移之dst_dir目录底下

2.mv src newname(没用过的新名字)

可用于改名

d1 改名为 dd1

11.cat(适合用于查询小文件)

语法 :cat [选项][文件]
功能 : 查看目标文件的内容
常用选项

  • -b 对非空输出行编号
  • -n 对所有输出行编号
  • -s 不输出多行空行

建立一个大程序

这里可以看到使用cat命令会导致刷屏,所以 cat只适合应用于小文件查找

12.less指令(重要)(适合查询大文件)

语法: less [参数] 文件

功能:

less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件

选项:

  • -i 忽略搜索时的大小写
  • -N 显示每行的行号
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • **q:quit**退出


less在查看之前不会加载整个文件。按住键盘上向下的箭头可以下翻,反之可以上翻

输入 /9999,后会帮你直接找到有"9999"的文件位置


提问:那么我们如何拿到2000-2020区间的数据呢?

解答:head -2020 log.txt | tail -21

这里的|管道 的意思,相当于:将|前的指令调用后,再作为输入 调用后面的指令

13.时间相关的指令

date显示:

date 指定格式显示时间: date +%Y:%m:%d

date 用法: date [OPTION]... [+FORMAT]

举例说明:

1.date(无选项)

2.date +%Y:%m:%d

注意:

  • 1.要有'+'
  • 2.年月日输出完后要有'_'才能输出小时分钟和秒

3.date +%s (时间戳)

14.Cal指令

cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。"阳历"又名"太阳历",系以地球绕行太阳一周为一年,为西方各国所通用,故又名"西历"。

命令格式cal [参数][月份][年份]
功能 : 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),

如有两个参数,则表示月份和年份

常用选项

  • -3 显示系统前一个月,当前月,下一个月的月历
  • -j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
  • -y 显示当前年份的日历

15.find指令:(灰常重要) -name

举例说明:

1.find 路径 -name 文件名

2.find 路径 -name *.c(查找当前目录下所有.c 文件)


16.grep指令

语法 : grep [选项] 搜寻字符串 文件
功能 : 在文件中搜索字符串,将找到的行打印出来

举例说明:

1.grep '字符串' 文件


找到log.txt中所有含999的行

2.grep '字符串' ./*

找到当前目录下所有有main的行,并且 显示所在文件位置!!!!!!!!!!!!!!!

相关推荐
路星辞*1 小时前
PBR(策略路由)的几种使用方式
运维·服务器·网络·安全·pbr
会飞的土拨鼠呀1 小时前
开源的镜像扫描的软件
运维·服务器
码农君莫笑1 小时前
linux运行程序和批处理详解
linux·命令窗口
okmacong1 小时前
04.计算机体系三层结构与优化(操作系统、计算机网络、)
java·服务器·计算机网络
网安CILLE1 小时前
2025年——【寒假】自学黑客计划(网络安全)
linux·网络·python·安全·web安全·网络安全·ddos
Juttt1 小时前
【Linux】进程状态
linux·运维·服务器
WG_172 小时前
Linux:Makefile 以及实现第一个程序:进度条
linux·运维·服务器
码农君莫笑2 小时前
linux 文件权限设置详解
linux·运维·服务器
索然无味io2 小时前
应急响应之入侵排查(下)
linux·windows·笔记·学习·网络安全·安全威胁分析
不爱学英文的码字机器3 小时前
[Git] 深入理解 Git 的客户端与服务器角色
运维·服务器·git