Linux常用命令汇总
关机命令: shutdown -h now 立即执行关机 或者 poweroff 直接关机 shutdown -h +5 关机前延迟r
重启命令: reboot 立即重启 shutdown -r now 重启 shutdown -r +5 重启前延迟 init 6 重启
查看系统版本: cat /etc/os-release 查看Linux内核版本 uname -r
删除文件: rm -r 文件夹名 删除文件夹及内容 rm -i 文件名 确认删除 rm -f 文件名 强制删除
删除文件夹: rmdir 文件夹名 删除空文件夹 rm -r 文件夹名 删除非空文件夹 rm -ri 文件夹名 确认删除 强制删除: rm -rf 文件夹名
删除多个 rm -r 文件夹1 文件夹2 文件夹3
查看端口占用情况: netstat -tuln | grep 端口号 ss -tuln | grep 端口号
关闭防火墙: iptables防火墙 service iptables stop 或者 systemctl stop iptables
firewalld 防火墙 systemctl stop firewalld 关闭防火墙 systemctl disable firewalld 禁用防火墙
检查防火墙状态 iptables -L 或者 firewall-cmd --state
解压Zip命令: unzip
命令的基本语法如下:
unzip 压缩文件名.zip -d 目标目录
-
unzip
: 表示解压 Zip 文件的命令。 -
压缩文件名.zip
: 指定要解压的 Zip 压缩文件名。 -
-d 目标目录
: 指定解压后的目标目录。如果不指定该选项,文件将解压到当前工作目录。
解压到当前目录
要将 Zip 文件解压到当前目录,只需执行以下命令:
unzip 压缩文件名.zip
例如,如果要解压名为 "archive.zip" 的 Zip 文件到当前目录,执行以下命令:
unzip archive.zip
解压到指定目录
如果你希望将 Zip 文件解压到特定的目标目录,可以使用 -d
参数指定目标目录:
unzip 压缩文件名.zip -d 目标目录
例如,要将 "archive.zip" 解压到 "/home/user/documents" 目录,执行以下命令:
unzip archive.zip -d /home/user/documents
查看 Zip 文件内容
如果你想查看 Zip 文件的内容列表,而不解压它,可以使用 -l
参数:
unzip -l 压缩文件名.zip
例如,要查看 "archive.zip" 文件的内容列表,执行以下命令:
unzip -l archive.zip
查看内存使用情况:
free
命令可以显示系统的内存和交换空间使用情况。打开终端并输入以下命令:
free -h
这个命令会显示系统的总内存、已用内存、空闲内存以及 swap(交换空间)的信息。而 -h
选项则是让这些信息以人类可读的方式(如 K,M,G)显示出来。
top
命令可以实时显示系统的性能统计信息,包括内存使用情况。在终端中输入以下命令:
top
在 top
命令的输出中,你可以看到系统的内存使用情况,包括总内存、已用内存、可用内存等信息。按下 q
键可以退出 top
命令。
使用 htop
命令(需要安装)
htop
是 top
命令的一个增强版本,它提供了更直观的用户界面和更多的功能。如果系统上没有安装 htop
,你可以先使用包管理器安装它。在终端中输入以下命令安装 htop
:
sudo apt install htop # For Debian/Ubuntu sudo yum install htop # For CentOS/RHEL
安装完成后,可以输入以下命令启动 htop
:
htop
htop
将显示类似于 top
命令的实时性能统计信息,但界面更加友好。如下图所示:
使用 vmstat
命令查看内存使用情况
vmstat
命令能提供关于系统内存,进程,中断,页面等信息。你可以使用下面的命令来查看内存的信息:
vmstat -s
输出中,你会看到关于内存使用的详细数据,包括总内存、可用内存、已用内存、缓冲区和缓存的内存等。
使用 /proc/meminfo
文件
Linux 系统将内存信息存储在 /proc/meminfo
文件中。你可以使用 cat
命令或 grep
命令来查看该文件的内容。
cat /proc/meminfo
或者只查看特定信息,比如可用内存:
grep MemAvailable /proc/meminfo
以上命令将显示系统可用内存的信息。
创建文件命令:
使用 touch
命令
touch
命令用于创建一个空白的文件,或者更新已有文件的访问和修改时间。
要创建一个空白的文件,只需在 touch
命令后跟上要创建的文件名:
touch 文件名
例如,要创建名为 "example.txt" 的空白文件,执行以下命令:
touch example.txt
使用文本编辑器命令
你还可以使用文本编辑器命令来创建文件并添加内容。常见的文本编辑器包括 vi
、vim
、nano
等。
例如,使用 vi
命令创建一个名为 "new_file.txt" 的文件:
vi new_file.txt
按下 i
键进入编辑模式,然后输入你想添加到文件中的内容。编辑完成后,按下 Esc
键退出编辑模式,然后输入 :wq
保存并退出。
使用 echo
命令
echo
命令用于将文本输出到终端或文件中。你可以将 echo
命令的输出重定向到文件,从而创建一个带有内容的文件。
例如,使用 echo
命令创建一个名为 "message.txt" 的文件并添加内容:
echo "这是一个文本文件的内容" > message.txt
以上命令将创建 "message.txt" 文件,并在其中添加一行文本 "这是一个文本文件的内容"。
使用其他命令生成文件内容
除了 echo
命令外,还可以使用其他命令生成文件的内容,并将其重定向到文件中。
例如,使用 date
命令将当前日期输出到 "date.txt" 文件:
date > date.txt
以上命令将创建 "date.txt" 文件,并将当前日期写入文件中。
创建文件夹(目录):
mkdir
命令的基本语法如下:
mkdir 目录名
-
mkdir
: 表示创建文件夹的命令。 -
目录名
: 指定要创建的文件夹名称。
创建单个文件夹
要创建单个文件夹,只需在 mkdir
命令后跟上要创建的文件夹名:
mkdir 文件夹名
例如,要创建名为 "my_folder" 的文件夹,执行以下命令:
mkdir my_folder
创建多个文件夹
如果你希望一次创建多个文件夹,可以将它们放在 mkdir
命令中,并用空格分隔:
mkdir 文件夹1 文件夹2 文件夹3
例如,要同时创建 "folder1"、"folder2" 和 "folder3" 这三个文件夹,执行以下命令:
mkdir folder1 folder2 folder3
创建多级文件夹
你还可以使用 -p
参数创建多级文件夹。如果某个父级文件夹不存在,使用 -p
参数会自动创建它。
mkdir -p 父级文件夹/子级文件夹
例如,要创建一个名为 "parent" 的父级文件夹,并在其中创建一个名为 "child" 的子级文件夹,执行以下命令:
mkdir -p parent/child
-p
参数会确保 "parent" 文件夹存在,即使它不存在也会被创建。
复制文件夹(目录) 到另一个文件夹(目录):
cp
命令的基本语法如下:
cp 源文件 目标文件夹
-
cp
: 表示复制文件的命令。 -
源文件
: 指定要复制的源文件名称。 -
目标文件夹
: 指定要将源文件复制到的目标文件夹。
复制单个文件
要复制单个文件,只需在 cp
命令中指定源文件和目标文件夹:
cp 源文件 目标文件夹
例如,要将名为 "file.txt" 的文件复制到名为 "backup" 的目标文件夹中,执行以下命令即可:
cp file.txt backup
复制多个文件
如果你希望一次复制多个文件,可以将它们放在 cp
命令中,并用空格分隔:
cp 文件1 文件2 文件3 目标文件夹
例如,要将 "file1.txt"、"file2.txt" 和 "file3.txt" 这三个文件复制到名为 "backup" 的目标文件夹中,执行以下命令:
cp file1.txt file2.txt file3.txt backup
复制目录及其内容
要复制整个目录及其内容,可以使用 -r
参数(递归复制)来确保连同子目录一起复制:
cp -r 源目录 目标目录
请注意,递归复制是将整个目录结构复制到目标目录,而不仅仅是单个目录。
例如,要将名为 "my_folder" 的目录及其内容复制到名为 "backup" 的目标目录中,执行以下命令:
cp -r my_folder backup
Linux 复制文件夹到另一个目录
使用 cp
命令来复制文件夹(目录)及其内容到另一个目录:
cp -r 源文件夹 目标目录
将 "源文件夹" 替换为要复制的原始文件夹路径,将 "目标目录" 替换为目标目录的路径。
使用 -r
参数(递归复制)是必要的,因为它将使 cp
命令递归复制整个目录结构,包括子目录和文件。
例如,要将名为 "source_folder" 的文件夹及其内容复制到名为 "destination_folder" 的目录中,可以使用以下命令:
cp -r source_folder destination_folder
注意事项
-
如果目标目录不存在,
cp
命令会自动创建它,并将源文件夹及其内容复制到新创建的目录中。 -
如果目标目录已经存在,复制操作将覆盖同名的文件和目录,因此请谨慎使用。
-
如果源文件夹中包含符号链接(软链接),使用
-r
参数会复制链接指向的文件而不是链接本身。 -
如果你想要保留原始文件夹的元数据(如时间戳和权限),可以使用
-p
参数,如cp -rp 源文件夹 目标目录
。
请确保在复制文件夹时,你有足够的权限来访问源文件夹和目标目录,并且谨慎确认目标目录是否正确。
查看本机Ip命令:
使用 ifconfig
命令
ifconfig
命令可以显示网络接口的配置信息,包括 IP 地址、子网掩码、广播地址等。在终端中输入以下命令:
ifconfig
ifconfig
命令将显示系统中所有网络接口的配置信息,包括以太网接口(如 eth0
)、无线接口(如 wlan0
)等。
使用 ip addr
命令
ip addr
命令是一个更现代化的工具,用于显示网络接口和 IP 地址信息。在终端中输入以下命令:
ip addr
ip addr
命令将显示所有网络接口的详细信息,包括 IP 地址、子网掩码、广播地址等。
使用 hostname -I
命令
hostname
命令用于查看或设置系统的主机名。通过添加 -I
参数,可以只显示 IP 地址信息。在终端中输入以下命令:
hostname -I
hostname -I
命令将显示系统当前的 IP 地址,多个 IP 地址之间用空格分隔。
使用 curl
或 wget
命令
你还可以使用 curl
或 wget
命令向外部服务器请求获取你的公共 IP 地址。使用 curl
命令:
curl ifconfig.me
或者使用 wget
命令:
wget -qO- ifconfig.me
这将从一个外部服务器获取你的公共 IP 地址并显示出来。
查看文件大小:
使用 ls
命令
ls
命令用于列出文件和目录。要查看文件大小,可以使用 -l
参数来显示详细信息,包括文件大小。在终端中输入以下命令:
ls -l 文件名
将 "文件名" 替换为你要查看大小的文件名。
例如,要查看名为 "example.txt" 的文件大小,执行以下命令:
ls -l example.txt
ls
命令将显示文件的详细信息,包括文件大小(以字节为单位)。
使用 du
命令
du
命令用于估算文件夹的大小。如果你想查看单个文件的大小,可以使用 -h
参数来以人类可读的格式显示文件大小(例如 KB、MB、GB)。
在终端中输入以下命令:
du -h 文件名
将 "文件名" 替换为你要查看大小的文件名。
例如,要以人类可读的格式查看 "example.txt" 文件的大小,执行以下命令:
du -h example.txt
du
命令将以 KB、MB、GB 等格式显示文件的大小。
使用 stat
命令
stat
命令用于显示文件或文件系统的详细状态信息,包括文件大小。在终端中输入以下命令:
stat 文件名
将 "文件名" 替换为你要查看大小的文件名。
例如,要查看 "example.txt" 文件的大小,执行以下命令:
stat example.txt
stat
命令将显示文件的详细状态信息,包括文件大小(以字节为单位)。
查看文件夹大小:
使用 du
命令
du
命令用于估算文件夹的大小。默认情况下,du
命令会递归地计算文件夹及其所有子文件夹的大小,并以字节为单位显示。在终端中输入以下命令:
du 文件夹名
例如,要查看名为 "my_folder" 的文件夹的大小,执行以下命令:
du my_folder
du
命令将显示文件夹的大小,以字节为单位。
使用 du
命令以更友好可读的格式显示大小
如果你想以友好可读的格式(例如 KB、MB、GB)显示文件夹的大小,可以使用 -h
参数。在终端中输入以下命令:
du -h 文件夹名
例如,要以可读性好的格式查看 "my_folder" 文件夹的大小,执行以下命令:
du -h my_folder
du
命令将以 KB、MB、GB 等格式显示文件夹的大小。
使用 ncdu
命令(需要安装)
ncdu
命令是 du
命令的一个增强版本,它提供了更直观和交互式的方式来查看文件夹大小,并且可以在终端中浏览文件夹的大小信息。
如果系统上没有安装 ncdu
,你可以先使用包管理器安装它。在终端中输入以下命令安装 ncdu
:
sudo apt install ncdu # Debian/Ubuntu 系统 sudo yum install ncdu # CentOS/RHEL 系统
安装完成后,可以输入以下命令启动 ncdu
:
ncdu 文件夹名
ncdu
命令将递归地计算文件夹及其子文件夹的大小,并以交互式界面显示大小信息。按下方向键可以浏览文件夹和子文件夹。
查看进程命令:
使用 ps
命令
ps
命令用于查看当前用户的进程信息。在默认情况下,ps
命令将显示当前终端窗口中运行的进程。在终端中输入以下命令:
ps
ps
命令将显示当前用户的进程信息,包括进程 ID (PID)、进程状态、CPU 使用率、内存使用量等。
使用 top
命令
top
命令用于实时显示系统的性能统计信息,包括正在运行的进程和它们的资源占用情况。在终端中输入以下命令:
top
top
命令将以实时更新的方式显示系统进程列表和各个进程的资源占用情况。按下 q
键可以退出 top
命令。
使用 htop
命令(需要安装)
htop
是 top
命令的一个增强版本,它提供了更直观的用户界面和更多的功能。如果系统上没有安装 htop
,你可以先使用包管理器安装它。在终端中输入以下命令安装 htop
:
sudo apt install htop # Debian/Ubuntu 系统 sudo yum install htop # CentOS/RHEL 系统
安装完成后,可以输入以下命令启动 htop
:
htop
htop
将以类似 top
命令的实时性能统计信息显示方式,但界面更加友好。
使用 pgrep
和 ps
命令组合查找进程
如果你知道进程的名称,也可以使用 pgrep
和 ps
命令组合来查找指定名称的进程。
例如,要查找名称为 "my_process" 的进程,可以执行以下命令:
pgrep my_process
然后,使用 ps
命令来查看进程的详细信息:
ps -p 进程ID
将 "进程ID" 替换为 pgrep
命令输出的进程 ID。
查看端口是否开放:
使用 netstat
命令
netstat
命令可以用来查看网络状态和连接信息,包括已监听的端口和连接的状态。
要查看特定端口是否处于监听状态,输入以下命令:
netstat -tuln | grep 端口号
将 "端口号" 替换为你要检查的端口号。该命令会列出所有已监听的端口,并使用 grep
过滤出指定端口号的信息。
使用 ss
命令
ss
命令也用于查看网络套接字信息,功能类似于 netstat
,但更快速和高效。
要查看特定端口是否处于监听状态,输入以下命令:
ss -tuln | grep 端口号
将 "端口号" 替换为你要检查的端口号。该命令会列出所有已监听的端口,并使用 grep
过滤出指定端口号的信息。
使用 nc
命令(需要安装)
nc
命令(也称为 netcat)是一个网络工具,它可以用来在终端上进行网络通信。
要检查特定端口是否开放,可以使用 nc
命令尝试连接到该端口:
nc -zv IP地址 端口号
将 "IP地址" 替换为要检查的目标 IP 地址,将 "端口号" 替换为要检查的目标端口号。
如果端口开放,你将看到类似以下的输出:
Connection to IP地址 端口号 port [tcp/*] succeeded!
如果端口未开放,你将看到类似以下的输出:
nc: connect to IP地址 端口号 (tcp) failed: Connection refused
请注意,nc
命令可能需要先安装,你可以使用包管理器来安装它。在 Debian/Ubuntu 系统中,输入以下命令安装 nc
:
sudo apt install netcat
在 CentOS/RHEL 系统中,输入以下命令安装 nc
:
sudo yum install nc
以上这些方法可以帮助你在 Linux 系统中检查端口是否开放。
挂载磁盘:
查看可用磁盘设备
在挂载磁盘之前,首先需要查看系统中可用的磁盘设备。你可以使用 lsblk
命令来查看当前系统中的磁盘设备列表。
lsblk
该命令将显示所有磁盘设备及其分区信息。
创建挂载点
在挂载磁盘之前,你需要选择一个目录作为挂载点,用于访问磁盘中的文件。通常,你可以在 /mnt
或 /media
目录下创建一个新目录作为挂载点。
sudo mkdir /mnt/my_disk
上面的命令将在 /mnt
目录下创建一个名为 "my_disk" 的目录,用于挂载磁盘。
挂载磁盘
使用 mount
命令来挂载磁盘到指定的挂载点。
sudo mount /dev/sdX /mnt/my_disk
将 /dev/sdX
替换为要挂载的磁盘设备名称,例如 /dev/sda
或 /dev/sdb
,而 /mnt/my_disk
是你在上一步中创建的挂载点。
查看挂载结果
成功挂载后,你可以使用 df
命令查看挂载结果。
df -h
该命令将显示已挂载的文件系统和它们的使用情况,包括挂载点和已挂载的磁盘设备。
设置开机自动挂载(可选)
如果你希望在系统重启后仍然保持磁盘的挂载状态,可以将挂载信息添加到 /etc/fstab
文件中。
sudo nano /etc/fstab
在打开的文件中添加类似以下的行:
/dev/sdX /mnt/my_disk ext4 defaults 0 0
保存文件后,该磁盘将在每次系统启动时自动挂载到指定的挂载点。
注意:在进行挂载磁盘等操作时,请确保你了解磁盘的正确设备名称,以免错误地挂载到错误的设备上,导致数据丢失或其他问题。
查看cpu信息:
使用 lscpu
命令
lscpu
命令用于显示 CPU 的详细信息,包括 CPU 型号、核心数、线程数等。在终端中输入以下命令:
lscpu
lscpu
命令将显示 CPU 的详细信息,包括 CPU 型号、架构、核心数、线程数、CPU 频率等。
使用 /proc/cpuinfo
文件
Linux 系统将 CPU 信息存储在 /proc/cpuinfo
文件中。你可以使用 cat
命令或 grep
命令来查看该文件的内容。
cat /proc/cpuinfo
或者只查看特定信息,比如 CPU 型号:
grep "model name" /proc/cpuinfo
以上命令将显示 CPU 的型号信息。
使用 top
命令
top
命令可以实时显示系统的性能统计信息,包括 CPU 使用率等。在终端中输入以下命令:
top
在 top
命令的输出中,你可以看到当前 CPU 的使用情况。
使用 htop
命令(需要安装)
htop
是 top
命令的一个增强版本,它提供了更直观的用户界面和更多的功能。如果系统上没有安装 htop
,你可以先使用包管理器安装它。在终端中输入以下命令安装 htop
:
sudo apt install htop # Debian/Ubuntu 系统 sudo yum install htop # CentOS/RHEL 系统
安装完成后,可以输入以下命令启动 htop
:
bashCopy code htop
htop
将显示类似于 top
命令的实时性能统计信息,但界面更加友好。
修改用户密码:
使用passwd命令: passwd 用户名
直接使用passwd 命令: passwd 会需要你输入之前的旧密码,然后输入两次新密码进行确认
用户密码策略
在大多数 Linux 发行版中,用户密码会受到一定的策略限制,如密码长度、复杂性要求等。如果新密码不符合要求,系统会提示你更改为符合要求的密码。
成功修改密码后,系统将会显示一个确认消息。
请确保你有足够的权限(通常需要管理员权限,可以使用 sudo
命令)来修改其他用户的密码。
定时任务:
使用 cron
cron
是一个用于在预定时间执行命令的服务。它使用 crontab
来管理定时任务。每个用户都有一个对应的 crontab
文件,允许该用户设置定时任务。
a. 查看现有定时任务
要查看当前用户的定时任务,可以使用以下命令:
crontab -l
b. 编辑定时任务
要编辑或添加定时任务,可以使用以下命令:
crontab -e
这将打开一个文本编辑器,让你编辑定时任务。每行一个定时任务,格式如下:
分钟 小时 日期 月份 星期 命令或脚本
例如,以下是一个在每天凌晨 3 点执行脚本的定时任务的例子:
0 3 * * * /path/to/your/script.sh
c. 定时任务时间格式说明
-
*
: 表示所有可能的值。例如,* * * * *
表示每分钟都运行一次。 -
*/n
: 表示每 n 个时间单位运行一次。例如,*/5 * * * *
表示每 5 分钟运行一次。 -
n
: 表示特定的时间单位。例如,30 3 * * 1
表示在星期一的凌晨 3 点 30 分执行任务。
d. 删除定时任务
要删除当前用户的所有定时任务,可以使用以下命令:
crontab -r
2. 使用 systemd
在较新的 Linux 系统中,也可以使用 systemd
来管理定时任务。systemd
使用 .timer
和 .service
单元来定义定时任务。
a. 编辑或添加定时任务
首先,你需要创建一个 .service
文件,定义要执行的命令或脚本。
创建一个新的服务文件(例如 mytask.service
),并在其中定义要运行的命令:
sudo nano /etc/systemd/system/mytask.service
在打开的文件中添加以下内容(注意将 /path/to/your/script.sh
替换为实际的脚本路径):
[Unit] Description=My Custom Task [Service] ExecStart=/path/to/your/script.sh [Install] WantedBy=multi-user.target
保存并关闭文件。
b. 创建 .timer
文件
然后,创建一个 .timer
文件,定义定时任务的时间间隔。
创建一个新的定时器文件(例如 mytask.timer
),并在其中定义执行间隔:
sudo nano /etc/systemd/system/mytask.timer
在打开的文件中添加以下内容(注意将 YourInterval
替换为你想要的时间间隔,如 daily
、hourly
、weekly
、15min
等):
[Unit] Description=My Custom Task Timer [Timer] OnBootSec=15min OnUnitActiveSec=YourInterval [Install] WantedBy=timers.target
保存并关闭文件。
c. 重载 systemd
完成上述步骤后,重新加载 systemd
,使新的定时任务生效:
sudo systemctl daemon-reload
d. 启动定时任务
启动定时任务:
sudo systemctl start mytask.timer
e. 停止定时任务
停止定时任务:
sudo systemctl stop mytask.timer
f. 开机自启动定时任务
如果你希望定时任务在系统启动时自动执行,可以启用开机自启动:
sudo systemctl enable mytask.timer
以上这两种方法都可以帮助你在 Linux 中设置定时任务。选择适合你的方法,并根据实际需求设置定时任务。
清屏命令: clear
杀死进程命令: kill 进程id 或者 ps -aux | grep 进程名
查看隐藏文件: ls -a 查看那所有文件(不包括 .和 .. ): ls -A
切换到root账户: su
修改文件,文件夹所属用户和组:
使用 chown
命令
sudo chown 新所有者:新所属组 文件或文件夹路径
参数说明:
-
新所有者
:指定新的所有者用户名或用户ID。 -
新所属组
:指定新的所属组组名或组ID。 -
文件或文件夹路径
:要修改的文件或文件夹的路径。
例如,要将文件 "example.txt" 的所有者修改为 "user1",所属组修改为 "group1",可以使用以下命令:
sudo chown user1:group1 example.txt
注意事项:
-
修改文件所属用户和组需要管理员权限(使用
sudo
)。 -
确保输入的用户名、用户ID、组名或组ID是有效的。
-
小心操作,确保你有权限更改文件的所有者和所属组。
以上是在 Linux 中使用 chown
命令修改文件所属用户和组的方法。请根据实际需求进行相应的修改,确保谨慎操作以避免不必要的问题。
下载文件:
使用 curl
命令
curl
是一个功能强大的命令行工具,可以用于下载文件。你可以使用 curl
命令来从 Internet 下载文件,并将其保存到本地目录。
curl -o 本地文件名 网络文件URL
参数说明:
-
-o 本地文件名
:指定要保存的本地文件名。 -
网络文件URL
:要下载的网络文件的 URL 地址。
例如,要从 Internet 下载名为 "example.txt" 的文件,可以使用以下命令:
curl -o example.txt https://example.com/example.txt
2. 使用 wget
命令
wget
是另一个常用的命令行下载工具,它也可以用于从 Internet 下载文件。
wget 网络文件URL
例如,要从 Internet 下载名为 "example.txt" 的文件,可以使用以下命令:
wget https://example.com/example.txt
注意事项:
-
下载文件可能需要管理员权限(使用
sudo
),特别是当下载目录需要管理员权限时。 -
请确保你有权访问并下载指定的网络文件。
-
如果下载的文件很大或下载速度较慢,你可以考虑使用
curl
或wget
命令的一些选项来优化下载。
搜索文件名命令:
使用 find
命令
find 搜索目录 -name "文件名模式"
参数说明:
-
搜索目录
:要开始搜索的目录路径。 -
-name "文件名模式"
:指定要匹配的文件名模式。你可以使用通配符*
来匹配文件名中的任意字符。
例如,要在 "/home/user/documents" 目录及其子目录中搜索文件名以 ".txt" 结尾的文件,可以使用以下命令:
find /home/user/documents -name "*.txt"
该命令将输出所有匹配的文件路径。
注意事项:
-
搜索文件名不需要管理员权限。
-
find
命令支持更多的搜索选项,如根据文件类型、大小等进行搜索。你可以通过查看find
命令的帮助文档来了解更多选项:
man find
创建软连接:
使用 ln
命令创建软链接
ln -s 源文件 目标链接
参数说明:
-
-s
:表示创建软链接。 -
源文件
:要创建软链接的源文件或目录。 -
目标链接
:指向源文件或目录的链接名称。
例如,要在当前目录下创建一个指向 "/home/user/documents/example.txt" 的软链接,可以使用以下命令:
ln -s /home/user/documents/example.txt example_link
这将在当前目录下创建一个名为 "example_link" 的软链接,指向 "/home/user/documents/example.txt" 文件。
timedatectl
命令
timedatectl
timedatectl
命令是一个系统时间和日期管理器,可以显示更详细的时间信息,包括时区、夏令时设置等。
使用 Vim 编辑器 (编辑文件)
vim 文件名
Vim 是一个功能强大的文本编辑器,但对初学者来说可能有一定的学习曲线。在命令中指定要编辑的文件名,然后按 "i" 键进入插入模式,进行编辑。编辑完成后,按 "Esc" 键退出插入模式,然后输入 ":wq" 并按回车保存并退出。
查看历史: history 查看当前路径: pwd
压缩和解压缩命令
1. 使用 tar
命令
tar
命令用于创建或解压 tar 归档文件,通常与其他压缩命令一起使用来压缩和解压缩文件和目录。
压缩文件或目录:
tar -czvf 压缩文件名.tar.gz 要压缩的文件或目录
参数说明:
-
-c
:创建新的 tar 归档文件。 -
-z
:使用 gzip 压缩算法。 -
-v
:显示详细信息。 -
-f
:指定归档文件名。
例如,要压缩目录 "example",可以使用以下命令:
tar -czvf example.tar.gz example
解压缩文件:
tar -xzvf 归档文件名.tar.gz
参数说明:
-
-x
:从 tar 归档文件中提取文件。 -
-z
:使用 gzip 解压缩算法。 -
-v
:显示详细信息。 -
-f
:指定归档文件名。
例如,要解压缩文件 "example.tar.gz",可以使用以下命令:
tar -xzvf example.tar.gz
2. 使用 zip
和 unzip
命令
zip
和 unzip
命令用于创建和解压 ZIP 归档文件。
压缩文件或目录:
zip 压缩文件名.zip 要压缩的文件或目录
例如,要压缩目录 "example",可以使用以下命令:
zip example.zip example
解压缩文件:
unzip 归档文件名.zip
例如,要解压缩文件 "example.zip",可以使用以下命令:
unzip example.zip
注意事项:
-
使用压缩和解压缩命令时,确保你有权限在当前目录或目标目录执行操作。
-
在压缩文件时,可以根据实际需要选择不同的压缩算法,如 gzip、bzip2 等。
重命名文件: mv 原文件名 新文件名
抓包命令:
使用 tcpdump 命令
tcpdump
是一个强大的网络抓包工具,可以捕获和显示网络数据包的内容。它可以通过命令行来使用。
抓包并输出到终端
sudo tcpdump
抓包并输出到文件
sudo tcpdump -w output.pcap
指定网络接口抓包
sudo tcpdump -i eth0
2. 使用 tshark 命令
tshark
是 Wireshark 的命令行版本,也是一个功能强大的抓包工具。
抓包并输出到终端
sudo tshark
抓包并输出到文件
sudo tshark -w output.pcap
指定网络接口抓包
sudo tshark -i eth0
3. 使用 wireshark 命令
wireshark
是一个图形化的网络抓包和分析工具,可以用来实时捕获和分析网络数据包。
启动 Wireshark 图形界面
sudo wireshark
注意事项:
-
抓包通常需要管理员权限(使用
sudo
)。 -
在进行抓包操作时,确保在合法的网络环境中使用,并遵守相关法律法规和网络安全准则。
-
抓包可能会生成大量数据,建议将输出保存到文件以便后续分析。
修改文件和文件夹权限
使用数字表示法修改权限
使用数字表示法来设置文件或文件夹的权限。数字表示法使用三个数字来表示权限,每个数字代表一种用户类别:所有者(User)、所属组(Group)和其他用户(Other)。每个数字对应一个权限值:
-
4:读权限(r)
-
2:写权限(w)
-
1:执行权限(x)
要设置权限,将对应的权限值相加:
chmod 数字权限 文件或文件夹
例如,要将文件 "example.txt" 设置为所有者可读写,所属组可读,其他用户可执行,可以使用以下命令:
chmod 754 example.txt
这里的 7 表示所有者可读写执行(4+2+1),5 表示所属组可读执行(4+1),4 表示其他用户只可读(4)。
2. 使用符号表示法修改权限
使用符号表示法来增加或删除权限,而不需要重新设置所有权限。符号表示法使用加号(+)来增加权限,减号(-)来删除权限,等号(=)来设置权限。并且,u 表示所有者,g 表示所属组,o 表示其他用户,a 表示所有用户。
chmod [符号][操作][权限] 文件或文件夹
例如,要将文件 "example.txt" 设置为所有者可写,可以使用以下命令:
chmod u+w example.txt
要将文件夹 "my_folder" 设置为所有用户可读执行,可以使用以下命令:
chmod a+rx my_folder
注意事项:
-
修改权限需要文件或文件夹的所有者或管理员权限(可以使用
sudo
)。 -
文件和文件夹的权限设置对系统和应用程序的运行具有重要影响,请谨慎操作。
-
要正确设置文件和文件夹的权限,建议了解 Linux 文件权限的基本知识。