前端一般是操作堡垒机、主机时,才会用到Linux命令,进行 查看日志、查询关键字、操作文件、网络请求
用 finalshell 软件,连接主机地址(流水线上 sit、uat 环境地址),输入用户名与密码,连接上后输入Linux命令,进行操作
查看日志命令
cat fileName
命令,表示从第一个字节开始正向查看文件的内容(通常用于查看较小的日志文件)
cat
命令是一个非常实用的文本文件查看工具
cat /var/log/syslog # 查看syslog文件的全部内容
cat -n /var/log/syslog # 查看syslog文件的全部内容,并显示行号
cat file1 file2 > newfile # 将多个文件合并成新文件输出
cat /etc/passwd | more # 将内容输出到终端
cat /etc/hosts >> /etc/hosts.backup # 将会把`/etc/hosts`文件的内容追加到`/etc/hosts.backup`文件的末尾
tac fileName
命令,表示从最后一行开始反向查看一个文件的内容
tac
命令是一个非常实用的文件反向输出工具,可以帮助快速查看文件的末尾内容
tac filename # 反向查看文件的内容
tac file1 file2 > newfile # 将多个文件反向合并输出
tac -n filename # 查看filename文件的全部内容,并显示行号
more filename
命令:用于查看一个长文件的内容
more
命令是一个基于终端的分页查看器,它可以将文件内容分页显示,并提供上下翻页、查找、跳转等功能。
与下面的less
类似
上下翻页
空格键
:向下翻一页。Enter键
:向下翻一行。b键
:向上翻一页。Ctrl+F
:向下翻一页。Ctrl+B
:向上翻一页。
跳转
=
:显示当前行号。:n
:跳转到第n行。/pattern
:向下搜索匹配pattern
的字符串。?pattern
:向上搜索匹配pattern
的字符串。
more /etc/passwd # 会将`/etc/passwd`文件的内容分页显示到终端,每页显示一屏
/root # 搜索包含"root"的字符串
?root # 向上搜索包含"root"的字符串
:100 # 跳转到第100行
less filename
命令:用于查看较大的日志文件,支持按页、按行翻页,支持搜索和高亮关键字
less /var/log/syslog # 查看syslog文件的全部内容
tail filename
命令:用于查看文件的末尾几行内容,通常用于实时查看正在写入的日志文件
-f
:实时跟踪文件的变化。
-n
:指定要查看的行数。
tail -f /var/log/syslog # 实时查看syslog文件的变化
tail -n 100 /var/log/syslog # 查看syslog文件的末尾100行内容
查询关键字
grep 关键字 filename
命令:用于在文件中搜索指定的关键字,并显示包含该关键字的行
-i
:忽略大小写。
-n
:显示行号。
grep "error" /var/log/syslog # 在syslog文件中搜索包含"error"关键字的行
grep -i "error" /var/log/syslog # 在syslog文件中搜索包含"error"或者"ERROR"关键字的行
grep -n "error" /var/log/syslog # 在syslog文件中搜索包含"error"关键字的行,并显示行号
find
命令:快速定位符合条件的文件
find
命令是一个强大的文件搜索工具,它可以在指定目录下查找符合条件的文件,并将其输出到终端。
find / -name filename # 从 '/' 开始进入根文件系统搜索文件和目录
find / -user username # 搜索属于用户 'username' 的文件和目录
find /path/to/directory -name "filename" -type f
find /home -name "*.txt" -type f # 将会在`/home`目录下查找所有后缀为`.txt`的文件,并将其输出到终端。
find /path/to/directory -type f -mtime +N
find /home -type f -mtime +7 # 将会在`/home`目录下查找所有修改时间在7天之前的文件,并将其输出到终端。
find /path/to/directory -user username -or -group groupname
find /home -user alice -or -group staff # 将会在`/home`目录下查找所有属于用户`alice`或用户组`staff`的文件,并将其输出到终端
find /path/to/directory -type f -size +Nc
find /home -type f -size +1M # 将会在`/home`目录下查找所有大小大于1MB的文件,并将其输出到终端。
find /path/to/directory -type f -perm mode
find /home -type f -perm 664 # 将会在`/home`目录下查找所有权限为`664`的文件,并将其输出到终端。
find / -perm 777 查找所有权限是777的文件
locate
命令:快速定位符合条件的文件
locate
命令也是一个文件搜索工具,它可以在系统的数据库中查找符合条件的文件,并将其输出到终端
locate "hello" # 将会在系统的数据库中查找所有文件名包含`hello`关键字的文件,并将其输出到终端
locate -r "\.txt$" # 将会在系统的数据库中查找所有后缀为`.txt`的文件,并将其输出到终端
locate -d /home/mydatabase "hello" # 将会在`/home/mydatabase`目录下的数据库中查找所有文件名包含`hello`关键字的文件,并将其输出到终端
注意:
locate命令是基于系统数据库的,如果系统中有新的文件或者文件被修改了,需要使用
updatedb命令更新数据库,以便
locate命令可以找到最新的文件。
ack
命令:快速定位符合条件的文本
ack
命令是一个更加强大的文本搜索工具,它可以在文本文件中查找匹配某个模式的字符串,并支持正则表达式
ack "hello" /home/mydirectory # 将会在`/home/mydirectory`目录下查找所有包含`hello`关键字的文本,并将结果输出到终端
ack "hello" --type=js /home/mydirectory # 将会在`/home/mydirectory`目录下查找所有后缀为`.js`的文件中包含`hello`关键字的文本,并将结果输出到终端
ack "hello\w+" /home/mydirectory # 将会在`/home/mydirectory`目录下查找所有匹配`hello`后面跟着一个或多个字母或数字的文本,并将结果输出到终端
操作文件(目录)
ls
:列出目录中的文件及目录cd
:切换当前工作目录cp
:复制文件或目录mv
:移动文件或目录rm
:删除文件或目录mkdir
:创建新目录touch
:创建新文件或更新现有文件的时间戳pwd
: 查看当前工作目录clear
: 清除屏幕
ls /home/mydirectory # 将会列出`/home/mydirectory`目录中的所有文件及目录
cd /home/mydirectory # 将会把当前工作目录切换到`/home/mydirectory`目录
cd .. 返回上一级目录
cd / 返回根目录
cd - 返回上一次访问的目录
cp /home/myfile.txt /home/mydirectory/myfile.txt # 将会把`/home/myfile.txt`文件复制到`/home/mydirectory`目录中
mv /home/myfile.txt /home/mydirectory/myfile.txt # 将会把`/home/myfile.txt`文件移动到`/home/mydirectory`目录中
rm /home/myfile.txt # 将会删除`/home/myfile.txt`文件
mkdir /home/newdirectory # 将会在`/home`目录中创建一个名为`newdirectory`的新目录
touch /home/myfile.txt # 记录创建名为`myfile.txt`的新文件时的时间戳
网络请求
ping
:测试网络连接是否畅通
ping www.google.com # 测试是否能够连接到`www.google.com`主机
netstat
:显示网络连接状态
netstat -tunlp | grep 端口号
:查看端口号占用情况
列出所有端口
netstat -a # 显示所有活跃的网络连接状态
curl
:通过URL获取文件并进行操作
curl -O https://example.com/file.txt # 通过URL`https://example.com/file.txt`获取文件并存储到当前目录下。
wget
:通过URL获取文件并进行操作
wget https://example.com/file.txt # 通过URL`https://example.com/file.txt`获取文件并存储到当前目录下