linux指令
查看系统文件
查看centos版本
1 | cat /etc/redhat-release |
查看cpu信息
1 | cat /proc/cpuinfo |
查看对应端口进程 netstat
1 | netstat -tunpl | grep 端口号 |
解压缩 tar/unzip/unrar
1 | tar –xvf file.tar |
参数:
-x
解压-v
显示过程-f
后接文件名-z
解压.gz
文件-Z
解压.Z
文件-j
解压.bz2
文件
unzip
解压 .zip
文件 unrar
解压
.rar
文件
搜索 which/whereis/locate/find
which
搜索可执行文件。whereis
比which
搜索更多文件类型。locate
通过数据库索引查找,更快但有延迟,可通过updatedb
更新索引。find / -name filename
更慢,可搜索指令目录。
修改权限 chmod
绝对模式:使用数字来指定文件或目录的权限,包含三个数字,每个数字代表一组权限(所有者、所属组和其他用户)。如下指令将 file 的权限设置为所有用户都可以读(4)、写(2)和执行(1),即 rwxrwxrwx。
1
chmod 777 file
相对模式:使用符号来指定文件或目录的权限,包含三个符号,每个符号代表一组权限(所有者、所属组和其他用户)。如下指令将 file 的权限设置为所有用户都可以读(r)、写(w)和执行(x),即 rwxrwxrwx。
1
chmod ugo+rwx file
其中,
u
代表所有者,g
代表所属组,o
代表其他用户,a
代表所有用户,+
代表添加权限,-
代表删除权限,=
代表设置权限。并且可以如下通过逗号间隔的方式指定不同用户的权限相对变更。
1
chmod u-w,g-rwx,o-rwx file
修改拥有者 chown
命令格式: chown [选项] 用户名 [文件名]
常见选项: -R:递归处理,允许同时改变该目录下所有子目录和文件的拥有者 -c:仅在文件的拥有者真正变化时显示信息 -v:执行时显示详细的处理信息
1 | chown user01 a.txt |
1 | chown -Rv user02 test/ |
输出匹配行 grep
grep 是在 Linux/Unix 操作系统中常用的命令之一,其功能为在文件或输出中查找指定的文本模式,并输出匹配的行。
全称Global regular expression and print。
命令格式: grep [选项] 模式 [文件名]
常见选项: -c:仅输出匹配的行数 -i:忽略字母大小写 -n:输出匹配的行号 -r:递归搜索指定目录及其子目录下的所有文件 -v:仅输出不匹配的行
示例:
- 在文件 a.txt 中查找包含"hello"的行: grep "hello" a.txt
- 在文件 b.txt 中查找以"world"结尾的行,同时忽略字母大小写: grep -i "world$" b.txt
- 在目录 test 及其子目录下的所有文件中查找包含"test"的行,同时输出匹配的行号: grep -rn "test" test/
- 在输出中查找包含"error"的行,同时输出不匹配的行: command | grep -v "error"
文本流编辑 sed
sed 指令是一种流编辑器,用于对文件或文本进行编辑和转换。它是 Unix 和类 Unix 操作系统中常见的工具之一。
sed 指令的基本用法是将输入流(通常是文件)的每一行交给一个脚本进行处理,然后将处理结果输出到标准输出中,也可以直接修改输入文件。脚本由一条或多条指令组成。
sed 指令支持的指令包括:
1.替换指令(s):用于查找并替换文本。
2.删除指令(d):用于删除指定的行或行范围。
3.输出指令(p):用于将指定的行或行范围输出到标准输出中。
4.追加指令(a):用于在指定行后面追加文本。
5.插入指令(i):用于在指定行前面插入文本。
6.变换指令(y):用于将文本中的字符按照指定的映射规则进行转换。
sed 指令的语法如下:
1 | sed [-n] [-e] '脚本' 文件名 |
其中,-n 选项表示只输出经过处理的行,-e 选项用于添加一条脚本指令。脚本由单引号引起来,可以包含多条指令。
例如,下面是一个将文件中 hello 替换成 world 的例子:
1 | $ sed -e 's/hello/world/' file.txt |
sed 指令还可以通过正则表达式进行匹配,可以灵活地处理文本。
查看尾部 tail
在Linux中,tail指令是一种用于显示文件尾部内容的命令行工具。它可以快速显示指定文件的后几行内容,通常用于查看日志文件、实时监控文件变化等。
tail指令有许多不同的选项,用于控制显示的内容。以下是其中的一些常用选项:
- -f :实时跟踪文件的变化,并将新增内容实时显示出来。
- -n NUM :仅显示文件末尾的NUM行内容。
- -q :不显示文件名,仅显示内容。
- -s SEC :在输出内容之间加入延时,以秒为单位。
例如,要查看日志文件的最后10行内容并实时跟踪文件变化,可以使用以下命令:
1 | tail -f -n 10 logfile.txt |
这将在屏幕上实时显示logfile.txt文件的末尾10行内容,并等待新的内容输入。如果有新的内容添加到该文件中,tail将自动更新并显示新增的内容。
串接 cat
在Linux中,cat指令是一种用于连接、显示、复制文本文件内容的命令行工具。它可以将多个文本文件的内容输出到一个文件中,也可以用来创建新文件,或者从一文件复制到另一文件。
cat指令有许多不同的选项,用于控制输出的形式。以下是其中的一些常用选项:
- -n :显示行号(在每行前面添加行号)。
- -s :把连续的多个空行合并为一行。
- -v :显示不可打印(非 ASCII)字符。
- -A :同时使用 -v 和 -s 选项。
例如,要在屏幕上显示文件file.txt的内容,可以使用以下命令:
1 | cat file.txt |
也可以通过管道符号将cat指令的输出输入到另一个命令中,以实现更复杂的文本处理任务。例如,要在文件file.txt的每行前面加上行号并将结果输出到新文件newfile.txt中,可以使用以下命令:
1 | cat -n file.txt > newfile.txt |
这将将file.txt的内容添加行号后输出到新文件newfile.txt中。
可以使用Linux中的cat命令创建新文件,步骤如下:
- 在命令行中输入以下命令,使用两个大于符号指定输出重定向到一个新文件名:
1 | cat > newfile.txt |
- 按Enter键开始输入新文件的文本内容,每输入一行按Enter键结束。输入完成后,按Ctrl+D组合键结束文件输入。
- 这时就成功创建了一个新文件newfile.txt,可以使用ls命令查看当前目录下的文件列表,找到新创建的文件。
注意:如果新文件已经存在,将会覆盖原文件内容。因此,在使用cat创建文件时要特别小心,避免误操作导致文件丢失。
查看文件 less
在Linux中,less指令是一种用于查看文本文件内容的命令行工具。它可以逐页显示文件内容,支持向上或向下翻页、查找关键字、快速跳到文件的开头或结尾等功能,是查看大型文本文件时更好的替代工具。
less指令的基本语法为:
1 | less [OPTIONS] FILENAME |
其中,FILENAME为要查看的文件路径,OPTIONS为less指令的选项,用于控制 less 的行为。
less指令的一些常用选项如下:
- -n :显示每行所在的行号。
- -i :忽略查找时的大小写。
- -E :强制显示到文件的结尾。
- -S :关闭自动换行,显示长行时不自动折行。
- /pattern :查找文件中的pattern字符串。
例如,如果要查看文件 file.txt 的内容,可以输入以下命令:
1 | less file.txt |
在less界面中,使用上下箭头键来向前和向后翻页,使用空格键向下翻一页,使用b键向上翻一页,使用g键跳至文件开头,使用G键跳至文件结尾,用斜杠 / 加关键字来进行文本搜索等。
汇总
cd:切换目录 ls:列出目录下的文件和文件夹 pwd:显示当前目录的路径 rm:删除文件或目录 cp:复制文件或目录 mv:移动或重命名文件或目录 mkdir:创建一个新的目录 touch:创建一个新文件或更新已有文件的时间戳 cat:显示文件内容 grep:在文件中查找特定文本 top:显示系统的运行情况和进程信息 ps:查看系统进程 chmod:更改文件或目录的权限 chown:更改文件或目录的所有者和组 tar:打包和解压缩文件和目录 sudo:以管理员身份运行指令 ping:测试网络连接 curl:下载网站的数据 wget:下载网站的文件 ssh:远程登录到另一台计算机。