【LINUX相关】
一、Linux怎么进行查看日志?
首先得问问开发项目日志存放在哪里,可以使用多种命令来查看日志。
常用的命令包括tail、cat、less和grep等。
例如:
1、使用tail命令可以实时查看日志文件的最新内容:tail -f log_file,
2、使用cat命令可以查看整个日志文件的内容,
3、使用less命令可以分页查看日志文件的内容,
4、使用grep命令可以根据关键字搜索日志文件中的内容。
与 less 命令相比,more 命令有一些限制,例如不能向上滚动屏幕(只能向下滚动),也不能编辑文件内容
二、Linux查看文件用什么命令
在 Linux 系统中,有多种命令可以用来查看文件。以下是一些常用的命令:
1. **cat**:用于显示整个文件的内容。
cat filename
2. **less**:用于分页显示文件内容,可以向上或向下滚动。
less filename
3. **more**:也用于分页显示文件内容,但只能向下滚动。
more filename
4. **head**:默认情况下,显示文件的前 10 行。
head filename
5. **tail**:默认情况下,显示文件的最后 10 行。
tail filename
6. **grep**:用于在文件中搜索指定的模式或字符串。
grep "pattern" filename
7. **vi** 或 **vim**:文本编辑器,可以用来查看和编辑文件。
vi filename
8. **nano**:另一个文本编辑器,也可以用来查看和编辑文件。--不常用
nano filename
三、说一下你常用的Linux 命令
1. 文件和目录操作命令:如ls、cd、cp、mv、rm等,用于管理文件和目录。
2. 系统监控命令:如top、free、df、du等,用于监控系统资源使用情况。
3. 网络管理命令:如ifup、ifdown、netstat、ss等,用于管理网络设备和查看网络状态。
4. 系统管理命令:如man、help、basename、dirname等,用于获取系统信息和查看文件属性。
5. 压缩和解压缩命令:如tar、gzip、unzip等,用于压缩和解压缩文件。
6. 进程管理命令:如ps、kill、pkill等,用于查看和管理进程。
7. 备份和恢复命令:如cpio、dd、tar等,用于备份和恢复数据。
8. 系统安全命令:如chown、chmod、chattr等,用于设置文件权限和所有权。
9. 软件包管理命令:如apt、yum、dnf等,用于安装、更新和卸载软件包。
10. 日志查看命令:如grep、tail、cat等,用于查看和分析系统日志。
1、ls - 列出当前目录下的文件和目录。
2、cd - 更改当前工作目录。
3、pwd - 显示当前工作目录的路径。
4、mkdir - 创建新目录。
5、rm - 删除文件或目录。
6、cp - 复制文件或目录。
7、mv - 移动或重命名文件或目录。
8、cat - 将文件内容显示在标准输出上。
9、less - 分页显示文件内容。
10、grep - 在文件中搜索特定的模式或文本。
11、find - 在文件系统中搜索文件和目录。
12、tar - 用于创建和解压缩归档文件。
13、ssh - 远程登录到其他计算机。
14、ping - 测试网络连接。
15、sudo - 以超级用户身份执行命令。
16、apt-get (或 yum, dnf 等) - 用于安装和管理软件包。
17、top (或 htop) - 显示系统的实时资源使用情况。
18、df - 显示磁盘空间使用情况。
19、free - 显示系统的内存使用情况。
20、man - 查看命令的帮助文档。
四、在Linux中切换用户身份用什么命令
在Linux中(不管是RedHat还是CentOS),从root 用户切到
userl 用户,一般用什么命令?
Red Hat 和 CentOS 都是流行的 Linux 发行
Red Hat 是一个商业产品,提供了额外的支持和服务;
而 CentOS 是一个社区驱动的项目,免费提供给所有用户。
su 命令
su (superuser) 命令允许你以另一个用户的身份运行命令,包括 root 用户。使用 su 命令,你需要知道目标用户的密码。
基本用法:su [username]
示例:su userl 将以 userl 用户的身份登录。回车后,需要输入密码
用途:主要用于临时切换到其他用户环境
sudo 命令
sudo (superuser do) 命令允许你以 root 用户或其他用户的身份执行命令,而无需密码直接登录为该用户。使用 sudo 命令,你需要输入自己的用户密码(而不是目标用户的密码),并且你的系统管理员必须事先授权你使用 sudo。
基本用法:sudo [command]
示例:sudo apt-get update 将以 root 用户的身份更新软件包列表。
用途:主要用于执行需要 root 权限的操作,同时提供了更细粒度的权限控制和日志记录功能。
主要区别
1、身份验证:su 需要目标用户的密码,而 sudo 需要当前用户的密码。
2、授权:su 不需要预先授权,任何用户都可以尝试使用;sudo 需要系统管理员配置和授权。
3、安全性:sudo 提供了更高的安全性,因为它允许管理员精确控制哪些用户可以执行哪些命令。
4、日志记录:sudo 会记录所有使用 sudo 执行的命令,方便审计和追踪;su 则不提供此功能。
5、用途:su 是一个更传统的命令,适合在需要临时切换到其他用户环境时使用;
而 sudo 是一个更现代的工具,适合在需要执行特权操作时使用,尤其是在多用户环境中。
五、Linux 中,一般隐藏文件是什么样的?
隐藏文件通常以点(.)开头。例如,.bashrc、.gitignore等都是隐藏文件。
这些文件通常用于存储配置信息或临时文件等
这些文件在默认情况下不会在文件浏览器或命令行中显示,除非你使用特定的命令或设置来查看它们。
例如,一个名为 .bashrc 的隐藏文件在标准的 ls 命令输出中不会显示。
要查看包括隐藏文件在内的所有文件,你需要使用 ls -a 或 ls -al 命令。
隐藏文件通常用于存储用户配置、系统设置或其他不希望在日常操作中频繁看到的文件。
例如,.bashrc 文件包含了 Bash shell 的配置信息,.ssh 目录存放了 SSH 密钥和其他相关文件。
请注意,Linux 中没有专门的“隐藏”属性,任何文件只要文件名以点号(.)开头,就会被视为隐藏文件。
六、Linux 中,怎么显示隐藏文件?
可以使用ls命令加上“-a”选项来显示所有文件,包括隐藏文件。 例如,ls -a命令将显示当前目录下的所有文件和目录,包括以点(.)开头的隐藏文件。
1、使用 ls -a 命令:
这个命令会列出当前目录下的所有文件,包括隐藏文件。其中 -a 选项表示显示所有文件。
2、使用 ls -al 命令:
这个命令不仅显示所有文件,还会以长格式显示文件的详细信息,包括权限、所有者、大小、修改日期等。
3、在文件浏览器中显示隐藏文件:
大多数 Linux 文件浏览器都提供了一个选项,可以在视图中显示隐藏文件。例如,在 Nautilus 文件浏览器中,你可以通过点击顶部菜单栏的 View -> Show Hidden Files 来显示隐藏文件。
七、Linux 系统中,一个文件的访问权限是755,其含义是什么?
在 Linux 系统中,文件的访问权限通常用一个三位数字表示,称为文件模式或权限码。
这个数字每一位都表示不同的用户组对该文件的访问权限。
从左到右,这三位数字分别代表:
1、文件所有者(User)的权限
2、文件所属组(Group)的权限
3、其他用户(Others)的权限
每一位数字又由三个数字组成,分别对应读取(Read)、写入(Write)和执行(Execute)权限。
这些数字的值是:
4 表示读取权限
2 表示写入权限
1 表示执行权限
如果某一类用户(所有者、所属组或其他用户)拥有某种权限,则相应的二进制位被设置为1,否则为0。
所以,权限码755的含义是:
文件所有者(User)有读取(4)、写入(2)和执行(1)权限,总共是7。
文件所属组(Group)和其他用户(Others)都只有读取(4)和执行(1)权限,总共是5。
因此,权限码755意味着文件所有者可以读取、写入和执行该文件,而所属组和其他用户只能读取和执行该文件。
八、如何查看CPU 信息?
在 Linux 系统中,可以通过以下几种方式来查看 CPU 信息:
1、使用 lscpu 命令:
这个命令提供了关于系统 CPU 的详细信息,包括每个 CPU 的型号、核心数、线程数、主频等。
lscpu
2、使用 cat /proc/cpuinfo 命令:
这个命令会显示一个包含 CPU 信息的文本文件,其中包括了每个 CPU 的详细信息。
3、使用 grep 命令从 /proc/cpuinfo 文件中提取特定信息,例如,查看 CPU 型号:
grep "model name" /proc/cpuinfo
4、使用 dmidecode 命令:
这个命令可以显示系统的硬件信息,包括 CPU。需要注意的是,这个命令可能需要 root 权限才能运行。
sudo dmidecode -t processor
以上这些命令都可以在 Linux 终端中执行
九、如何查看占用CPU 使用率最高的进程?
1、linux
linux可以使用top或ps命令来查看占用CPU使用率最高的进程。
top命令可以实时显示系统中各个进程的资源占用状况,
ps命令可以查询系统中各个进程的资源占用状况。
使用这些命令可以查看进程的CPU使用率、内存占用等信息
2、windows
快捷键:ctrl+shift+Esc
打开任务管理器
或者
cmd :tasklist
十、查看占用CPU 使用率最高的前五个进程?
1、linux
1)
top -n 1 -o %CPU | head -n 6
这个命令的含义如下:
top -n 1:表示只查看一次top的输出结果。
-o %CPU:表示按照CPU使用率进行排序。
head -n 6:表示只输出前六个结果,即占用CPU使用率最高的前五个进程以及总计。
执行该命令后,终端会显示当前系统中占用CPU使用率最高的前五个进程的详细信息,包括进程ID、用 户、CPU使用率等。
2)
ps -eo pid,ppid,cmd,%cpu,%mem --sort=-%cpu | head -n 5
ps -eo pid,ppid,cmd,%cpu,%mem
: 显示进程的 PID、父进程 PID、命令名称、CPU 使用率和内存使用率。--sort=-%cpu
: 按照 CPU 使用率降序排序(注意这里的-
符号表示降序)。head -n 5
: 只显示前五行结果。
3)
top -b -n 1 | grep "^[0-9]" | sort -k9 -nr | head -n 5
十一、怎么查看对应的启动进程号/当前应用的进程号?
1、ps -ef |grep 进程名
可以使用ps命令结合grep命令来查找对应进程的进程号(PID)。 例如:
要查找名为“nginx”的进程的PID,可以使用以下命令:ps -ef | grep nginx,该命令将显示与
“nginx”相关的进程信息,包括PID。
要查找当前应用的进程号,可以使用ps命令加上“-p”选项和进程名或PID。例如,ps -p 12345将显示PID为12345的进程信息。
带双引号也ok
2、只显示进程号
1)ps -C 进程名
查找名为 chrome
的进程:ps -C chrome
2)pgrep 进程名
3)pidof 进程名
带双引号也ok
十二、怎么查看文件的前n行,后n行?
可以使用head和tail命令来查看文件的前n行和后n行。
head命令用于查看文件的前n行,例如:head -n 10 filename将显示filename文件的前10行内容。
tail命令用于查看文件的后n行,例如:tail -n 10 filename将显示filename文件的最后10行内
容。
十三、如何过滤文件内容中包含”ERROR“的行?
可以使用grep命令来过滤文件中包含特定关键词的行。
比如,要过滤文件中包含“ERROR”的行,可以使用以下命令:grep "ERROR" filename,该命令将输
出filename文件中包含“ERROR”关键词的所有行。
如果想要同时过滤多个关键词
可以使用grep的“-e”选项来指定多个模式。例如,grep -e "ERROR" -e "警告"
filename将同时过滤包含“ERROR”和“警告”关键词的行
1、基本用法:
grep "ERROR" filename.txt
这将在终端中显示 filename.txt 中所有包含 "ERROR" 字符串的行。
2、忽略大小写:
grep -i "error" filename.txt
-i 选项使得 grep 命令忽略大小写差异,查找所有包含 "error"、"Error"、"ERROR" 等大小写变体的行。
3、只显示匹配的部分:
grep -o "ERROR" filename.txt
-o 选项告诉 grep 只显示匹配的部分,而不是整个行。
4、反向匹配:
grep -v "ERROR" filename.txt
-v 选项使得 grep 命令只显示不包含 "ERROR" 字符串的行。
5、只显示文件名:
grep -l "pattern" file1.txt file2.txt
-l 选项使得 grep 命令只显示包含匹配内容的文件名。
6、显示行号:
grep -n "pattern" file.txt
-n 选项使得 grep 命令在输出中包含行号。
十四、grep 和find 的区别?find 都有哪些用法?
grep和find是两个不同的命令,它们的功能和使用场景有所不同。
主要的区别:
grep是一个文本搜索工具,用于在文件中搜索匹配特定模式的行并输出结果。
find是一个文件搜索工具,用于在目录树中搜索匹配特定条件的文件或目录,并执行相应的操作。
grep可以通过正则表达式指定搜索模式,支持复杂的文本匹配和替换操作。
find 可以根据文件名、类型、大小、修改时间等多种条件进行搜索。
find的用法
1、搜索特定文件名:
find /path/to/directory/ -name "filename"
在 /path/to/directory/ 目录中搜索名为 "filename" 的文件。
2、搜索特定类型的文件:
find /path/to/directory/ -type f -name "*.txt"
在 /path/to/directory/ 中搜索所有以 ".txt" 结尾的文件。
3、搜索更改时间在某个时间点之后的文件:
find /path/to/directory/ -type f -mtime 0
在 /path/to/directory/ 中搜索今天更改的所有文件。
4、执行命令对找到的文件进行操作:
find /path/to/directory/ -type f -name "*.txt" -exec cat {} \;
在 /path/to/directory/ 中搜索所有以 ".txt" 结尾的文件,并使用 cat 命令显示它们的内容。
十五、查看 IP 地址?
查看本机的IP地址,可以使用以下命令:
1、ifconfig
这个命令会列出所有网络接口的详细信息,包括 IP 地址、子网掩码、广播地址等。
(ifconfig 在某些最新版本的 Linux 发行版中可能默认不安装,因为已被 ip 命令取代)
2、ip addr show
这个命令会显示网络接口的状态和配置信息,包括 IP 地址。
3、hostname -I
这个命令直接显示主机的 IP 地址。
4、ip route
这个命令显示当前的路由表,其中也包含了本机的 IP 地址。
十六、创建和删除一个多级目录?
1、创建多级目录可以使用 mkdir 命令结合 -p 参数:
mkdir -p dir1/dir2/dir3/dir4
-p 选项表示如果路径中的某些目录不存在,系统将自动创建这些目录。
例如,假设你要创建 /home/user/documents/reports 目录,但 /home/user/documents 目录可能不存在,使用 -p 可以确保所有必要的父目录都被创建。
或者一层一层逐级创建
mkdir /path/to/new
mkdir /path/to/new/directory
这种方法需要逐级创建每个目录。如果你知道所有父目录都已经存在,这种方法也有效。
2、删除多级目录(包括其中的所有文件和子目录)可以使用 rm 命令结合 -r(或 -R)参数:
rm -r dir1
-r 选项告诉 rm 命令递归地删除目录及其所有子目录和文件。
请小心使用这个命令,因为它会永久删除指定的目录和文件。
十七、在当前用户根目录中查找haha.txt 文件?
find ~/ -name haha.txt
根目录 (/): 根目录是文件系统的顶层目录,所有其他目录都是从根目录开始的。
用户主目录 (~): 用户主目录是每个用户的个人目录,通常包含该用户的个人文件和配置。
用户主目录可以用波浪号 (~) 来表示。例如,~/Documents 将指向当前用户的 Documents 目录。
十八、如何查询出tomcat 的进程并杀掉这个进程,写出linux 命令?
1、查询 Tomcat 进程:
ps aux | grep tomcat
这将显示所有包含 "tomcat" 关键字的进程,并提供每个进程的详细信息,包括进程 ID (PID)。
2、杀死 Tomcat 进程:
使用 kill 命令和 PID 杀死进程:
kill <PID>
将 <PID> 替换为要杀死的 Tomcat 进程的实际 PID。
如果你想强制杀死进程(例如,如果进程没有响应),可以使用 -9 选项:
kill -9 <PID>
这将立即终止进程。
简化版本
1、你也可以使用 pkill 命令来查找并杀死所有名称包含 "tomcat" 的进程:
pkill tomcat
2、如果你想强制杀死进程,可以使用 -f 和 -9 选项:
pkill -f -9 tomcat
请注意,在杀死进程之前,确保你知道自己在做什么,并且已经保存了所有未保存的工作。强制杀死进程可能会导致数据丢失或其他问题。
ps aux 更倾向于显示与当前终端相关的进程,而 ps -ef 显示系统中所有可见的进程。
ps aux 以用户格式显示进程信息,包括用户名和启动命令
而 ps -ef 以完整格式显示进程信息,包括 PID、PPID 等。
十九、查看系统硬盘空间的命令?
可以使用 df 命令来查看系统硬盘空间的使用情况:
-h 参数使得输出的磁盘大小更容易阅读(以KB,MB,GB等单位显示)。
df -h
在 Linux 系统中,可以使用以下命令来查看系统硬盘空间:
1. **df -h**:显示每个文件系统的磁盘使用情况,包括已用空间、可用空间和总空间。`-h` 选项将输出转换为易于阅读的格式(例如,使用 GB 或 MB)。
df -h
2. **du -a -h /**:递归地显示指定目录(在此示例中是根目录 "/") 中所有文件和子目录的磁盘使用情况。`-a` 选项将显示所有文件,而不是仅显示目录总结。`-h` 选项使输出更易于阅读。
du -a -h /
3. **lsblk**:显示块设备的信息,包括硬盘、分区和文件系统。可以用来查看硬盘的总容量和已用空间。
lsblk
4. **fdisk -l**:列出所有磁盘的分区表和详细信息,包括每个分区的大小和类型。
fdisk -l
5. **parted -l**:显示所有磁盘的分区信息,包括每个分区的大小、文件系统类型和标签。
parted -l
这些命令可以帮助你了解系统的磁盘使用情况和硬盘配置。
二十、查看当前机器 listen 的所有端口?
可以使用 netstat 或 ss 命令来查看当前机器监听的所有端口:
以下两个命令都可:
netstat -tuln
ss -tuln
在 Linux 系统中,可以使用以下命令来查看当前机器上监听的所有端口:
1. **`netstat -tulpn`**:这是一个经典的命令,用于显示活动的网络连接、监听的端口以及相关的进程信息。
- `-t` 选项指定只显示 TCP 连接。
- `-u` 选项指定只显示 UDP 连接。
- `-l` 选项显示正在监听的端口。
- `-p` 选项显示每个连接的进程 ID 和名称。
- `-n` 选项禁用域名解析,直接显示 IP 地址和端口号。
```bash
netstat -tulpn
```
2. **`ss -tulpn`**:这是一个更现代的命令,类似于 `netstat`,但提供了更多的功能和选项。
- `-t` 选项指定只显示 TCP 连接。
- `-u` 选项指定只显示 UDP 连接。
- `-l` 选项显示正在监听的端口。
- `-p` 选项显示每个连接的进程 ID 和名称。
- `-n` 选项禁用域名解析,直接显示 IP 地址和端口号。
```bash
ss -tulpn
```
3. **`lsof -i -P -n +L1`**:这个命令可以列出所有打开的网络文件(包括打开的端口)并显示相关的进程信息。
- `-i` 选项指定只显示网络文件。
- `-P` 选项禁用端口号到服务名的转换。
- `-n` 选项禁用主机名和用户名的解析。
- `+L1` 选项显示文件描述符的完整路径。
```bash
lsof -i -P -n +L1
```
以上命令都可以帮助你查看当前机器上正在监听的所有端口。根据你的需求和个人偏好,选择其中一个即可。
二十一、把一个文件夹打包压缩成.tar.gz 的命令,以及解压拆包.tar.gz的命令?
**打包压缩文件夹成.tar.gz**
使用 `tar` 命令和 `gzip` 命令结合可以将文件夹打包压缩成 `.tar.gz` 文件。以下是具体步骤:
1. 打开终端并导航到包含要压缩的文件夹的目录。
2. 使用以下命令来创建一个名为 `my_folder.tar.gz` 的压缩文件,其中 `my_folder` 是你要压缩的文件夹的名称:
tar -czf my_folder.tar.gz my_folder/
- `tar` 是用于打包文件的命令。
- `-c` 选项表示创建一个新的存档文件。
- `-z` 选项表示使用 `gzip` 压缩算法压缩存档文件。
- `-f` 选项指定输出文件的名称。
- `my_folder/` 是要压缩的文件夹的路径。
**解压拆包.tar.gz 文件**
使用以下命令可以解压拆包一个名为 `my_folder.tar.gz` 的压缩文件:
1. 打开终端并导航到包含要解压的 `.tar.gz` 文件的目录。
2. 使用以下命令来解压文件:
tar -xzvf my_folder.tar.gz
- `tar` 是用于解压文件的命令。
- `-x` 选项表示解压存档文件。
- `-z` 选项表示使用 `gzip` 压缩算法解压存档文件。
- `-v` 选项表示显示详细的解压过程。
- `-f` 选项指定要解压的文件的名称。
- `my_folder.tar.gz` 是要解压的压缩文件的路径。
执行上述命令后,`.tar.gz` 文件将被解压到当前工作目录中,创建一个名为 `my_folder` 的文件夹,其中包含原始文件夹的所有内容。
-v 会显示正在处理的每个文件的详细信息,提供了更好的可视性和反馈,需要了解压缩或解压缩过程中的详细信息,应该使用 -czvf
二十二、Xshell 工具如果想要实现从服务器上传或者下载文件?
Xshell 工具如果想要实现从服务器上传或者下载文件的话,可以使用 scp (Secure Copy) 命令。 SCP 是基于 SSH 协议的文件传输工具,可以用来在本地和远程服务器之间复制文件。
如果你想使用命令行工具来上传或下载文件,可以使用以下命令:
1、上传文件到服务器:使用 sftp 或 scp 命令。例如,使用 scp 命令上传文件:scp local_file user@remote_server:/path/to/remote/directory
2、从服务器下载文件:同样使用 sftp 或 scp 命令。例如,使用 scp 命令下载文件:scp user@remote_server:/path/to/remote/file local_file
在这些情况下,你不需要在服务器上安装任何额外的包,因为 sftp 和 scp 通常都是 Linux 系统的默认组件。
二十三、以/etc/passwd 的内容为例,提取用户名?
head /etc/passwd | cut -d: -f1
解释一下这个命令:
head /etc/passwd
:这个命令将/etc/passwd
文件的内容输出到控制台。cut -d: -f1
:这个命令将每行文本按照冒号 (:
) 作为分隔符,并只输出第一个字段(即用户名)。
当你运行这个命令时,输出将是 /etc/passwd
文件前五行中的所有用户名。
原文地址:https://blog.csdn.net/weixin_42333261/article/details/143776348
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!