文章目录
- [查看 Linux 主机 ip以及登录主机](#查看 Linux 主机 ip以及登录主机)
- Linux基础文件操作指令
- 文件和目录管理
- 文件内容查看与文本处理
- 系统信息和时间管理
- 搜索与查找
- 压缩与解压缩
-
- zip:用于创建压缩文件(.zip)。
- [unzip:解压 .zip 文件。](#unzip:解压 .zip 文件。)
- tar:可以将多个文件或目录打包成一个文件,并支持压缩解压。
- 计算与其他工具
查看 Linux 主机 ip以及登录主机
- 查看ip地址
在终端下敲 ifconfig 指令, 查看到 ip 地址
- 使用 XShell 登陆主机
在 XShell 终端下敲 ssh [ip]
Linux基础文件操作指令
man:查看命令的手册页,了解命令的详细用法。
语法
cpp
man [命令名称]
- -k 根据关键字搜索联机帮助
- num 只在第num章节找
- -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按 下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。
解释一下,面手册分为8章
- 是普通的命令
- 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文 件)
- 是库函数,如printf,fread
- 是特殊文件,也就是/dev下的各种设备文件
- 是指文件的格式,比如passwd,就会说明这个文件中各个字段的含义
- 是给游戏留的,由各个游戏自己定义
- 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
- 是系统管理用的命令,这些命令只能由root使用,如ifconfig
pwd:显示当前目录路径。
cd:切换目录。
. .切换到上级目录。
. 切换到当前目录。
作用:功能:改变工作目录。将当前工作目录改变到指定的目录下。
ls:列出当前目录下的文件和文件夹。
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls --d 指定目录
-i 输出文件的 i 节点的索引信息。 如 ls --ai 指定文件
-k 以 k 字节的形式表示文件的大小。ls --alk 指定文件
-l 列出文件的详细信息。
-n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
-F 在每个文件名后附上一个字符以说明该文件的类型,"*"表示可执行的普通文件;"/"表示目录;"@"表示符号链接;"|"表示FIFOs;"="表示套接字(sockets)。(目录类型识别)
-r 对目录反向排序。
-t 以时间排序。
-s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R 列出所有子目录下的文件。(递归)
-1 一行只输出一个文件。
cpp
最常用的:
ls -l//显示全部文件 也可以写成ll
ls -a//显示隐藏文件
mkdir:创建新目录。
-p:创建父目录并一起创建。
文件和目录管理
touch:创建一个空文件或更新文件的时间戳。
cpp
touch filename.txt
同时可以配合其他选项更新文件的时间。
-a 或--time=atime或--time=access或--time=use只更改存取时间。
-c 或--no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或--time=mtime或--time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。
cp:复制文件或目录。
-f :强制覆盖同名文件。
-i :交互模式,复制前提示。
-R:递归复制目录及其内容。
mv:移动文件或目录,或重命名文件。
-f :强制覆盖。
-i :交互模式。
-u :仅移动比目标文件更新的文件。
常用示例:
cpp
mv oldname.txt newname.txt // 重命名文件
mv file.txt /new/path/ // 移动文件
功能:
- 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的
目录中。 - 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它
将所给的源文件或目录重命名为给定的目标文件名。 - 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至
目标目录中。
rm:删除文件或目录。
-f :强制删除。
-i :删除前确认。
-r:递归删除目录。
常用示例:
cpp
rm file.txt // 删除文件
rm -r directory/ // 删除目录
文件内容查看与文本处理
cat:查看文件内容,合并文件。
-b :显示非空行行号。
-n :显示所有行行号。
-s:压缩空行。
more:逐页显示文件内容。
more 命令用于按页查看长文件内容,按 Enter 查看下一行,按 空格 查看下一页。
cpp
more filename.txt
less:更高级的文件查看工具,支持前后滚动。
在 Linux 中,less 是一个用于查看文件内容的命令行工具。与 more 命令类似,但功能更为强大,它可以让你滚动、搜索并查看文件内容,而不需要将整个文件加载到内存中。这对于查看大型文件非常有用。
基本用法
cpp
less filename
常用操作
- 向下滚动:按下 Space 或 Page Down
- 向上滚动:按下 b 或 Page Up
- 逐行向下:按下 Enter
- 逐行向上:按下 k
- 跳转到文件开头:按下 g
- 跳转到文件结尾:按下 G
- 搜索文本:输入 /关键词,然后按 Enter。按 n 跳到下一个匹配项。
- 退出:按下 q
实用技巧
- 按行号跳转:输入 行号 后按 G,例如 50G 跳到第 50 行。
- 在多个文件中切换:使用 :n 查看下一个文件,:p 查看上一个文件(如果用 less file1 file2 打开多个文件)。
- 忽略大小写搜索:使用 -I 选项,例如 less -I filename。
less 非常适合在终端中查看文件内容,尤其是在处理日志或大型文本文件时。
head:显示文件的前几行内容。tail:显示文件的后几行内容。
head 和 tail 是 Linux 中用于查看文件内容的命令,分别用于查看文件的开头 和结尾部分,非常适合快速预览文件内容。
head 命令
head 默认显示文件的前 10 行内容。可以通过指定行数来显示更多或更少的行。
tail 命令
tail 默认显示文件的最后 10 行内容,同样可以通过参数调整行数。这个命令特别适合监控日志文件的更新内容。
echo:在终端显示信息或将信息写入文件。
echo 是一个简单而常用的命令,在 Linux 和其他 Unix 系统中用于在终端上输出文本或变量内容。它可以用来打印消息、查看变量的值、生成输出到文件等。
cpp
echo "Hello, World!" // 输出文本
echo "Hello, World!" > file.txt // 输出到文件
系统信息和时间管理
date:显示或设置系统的日期和时间。
在 Linux 中,data 通常并不是一个单独的命令,而是指代与数据相关的内容,如文件数据、时间数据、环境变量数据等。
date 命令
date 命令用于显示和设置系统的日期和时间。它非常常见,用于在脚本中记录时间戳或生成特定格式的时间信息。
- 显示当前日期和时间:
cpp
date
- 自定义日期格式:
cpp
date +"%Y-%m-%d %H:%M:%S"
df:显示磁盘空间使用情况,查看文件系统的数据存储情况。
cpp
df -h
du:查看特定目录或文件的磁盘使用情况。
cpp
du -sh /path/to/directory
cal:显示当前或指定月份的日历。
cal [month] [year]:显示特定月份的日历。
-y :显示当前年的日历。
-3 :显示上月、当月和下月的日历。
df:查看磁盘空间使用情况。
cpp
cal // 显示当前月的日历
cal 2024 // 显示2024年的日历
who:查看当前登录的用户信息。
who 命令用于查看当前登录的用户信息,包括用户名、登录终端、登录时间等。
cpp
who -u
使用 -u 参数可以看到用户登录的更多详细信息。
uname:查看系统信息。
uname 命令用于查看系统的内核和硬件信息。
-a:显示所有信息。
cpp
uname -a // 查看所有系统信息
uname -r // 查看内核版本
shutdown:关机或重启。
-t [time] :延迟关机。
-h:关机。
搜索与查找
grep:在文件中搜索指定字符串。
grep 命令用于在文件中查找包含特定字符串的行。
cpp
grep "keyword" filename.txt
find:查找文件或目录。
常用参数:-name 按名称查找,-type 按类型查找。
find 命令用于查找文件或目录,支持按名称、类型、大小等多种条件查找。
cpp
find /path -name "filename.txt"
压缩与解压缩
zip:用于创建压缩文件(.zip)。
zip 命令
zip 用于将文件或目录压缩成 .zip 文件格式。
基本用法
cpp
zip archive_name.zip file1 file2 file3
这会将 file1、file2 和 file3 压缩到 archive_name.zip 文件中。
压缩目录
要压缩整个目录及其内容,可以使用 -r 选项(递归压缩)。
cpp
zip -r archive_name.zip directory_name
unzip:解压 .zip 文件。
unzip 命令
unzip 用于解压 .zip 文件。
基本用法
cpp
unzip archive_name.zip
这会将 archive_name.zip 解压到当前目录。
解压到指定目录
可以使用 -d 选项指定解压目标目录:
cpp
unzip archive_name.zip -d /path/to/destination
zip:用于压缩文件或目录,使用 -r 选项递归压缩整个目录。
unzip:用于解压 .zip 文件,可以用 -d 选项指定解压路径。
tar:可以将多个文件或目录打包成一个文件,并支持压缩解压。
-c:创建归档。
-x:解压归档。
-z:使用 gzip 压缩。
-j:使用 bzip2 压缩。
cpp
tar -cvf archive.tar /path/to/directory // 创建归档
tar -xvf archive.tar // 解压归档
tar -czvf archive.tar.gz /path/to/directory // 创建 gzip 压缩归档
tar -xzvf archive.tar.gz // 解压 gzip 归档
计算与其他工具
bc:进行浮点运算。
bc 是 Linux 中的一个命令行计算器,常用于执行基本和高级的数学运算。bc 支持浮点运算、变量、函数定义,并且可以处理复杂的表达式。它非常适合在脚本或终端中进行计算。
基本用法
可以直接在命令行中运行 bc,进入一个交互式计算模式:
cpp
bc
退出交互模式时,按 Ctrl + D。