Linux操作命令
Linux
文件与目录操作命令
相对路径和绝对路径
绝对路径:以根目录做起点,描述路径的方式,路径以/开头 。
相对路径:以当前目录做起点,描述路径的方式,路径不需以/开头。
ls:列出当前目录下的文件和目录。
参数:
-l:显示详细信息(权限、所有者、大小、创建时间等)。

第一个字符(’d’,’-‘)表示文件类型,d为文件夹,-为文件;
此后三个字符为一组表示权限,分别为文件所有者,文件所属组用户,其他用户的权限,r可读,w 可写,x可执行;
数字代表链接数;
后面为文件所有者和文件所属组;
然后是文件大小(字节);
接下来为创建时间;
最后为文件名。
-lh:以人类易读的方式列出文件大小。
-a:显示隐藏文件(以.开头的文件)。
cd:更改当前工作目录。
示例:
cd /home/user 进入 /home/user 目录。
cd .. 返回上一级目录。
pwd:显示当前工作目录的完整路径。
mkdir:创建新目录。make direction
参数:-p:自动创建不存在的父目录。
示例:
mkdir newfolder 创建名为 newfolder 的新目录。
mkdir -p test1/test2/test3
touch:创建文件。
示例:touch test.txt
rmdir:删除空目录。
rm:删除文件或目录。
参数:
-r:递归删除目录及其内容。
-f:强制删除文件。
示例:rm -rf /path/to/directory 强制递归删除一个目录及其内容。
cp:复制文件或目录。
参数:-r 递归复制目录。
示例:cp file1 file2 复制 file1 为 file2。
mv:移动或重命名文件或目录。
示例:mv oldfile newfile 将 oldfile 重命名为 newfile。
文件内容查看命令
cat:显示文件内容。
示例:cat file.txt 查看 file.txt 的内容。
more:分页显示文件内容,按页阅读长文件(空格翻页)。
示例:more file.txt
less:类似 more,但支持更灵活的分页查看。
示例:ess file.txt
head:查看文件的前几行。
参数(可选):-n 显示匹配的行的行号。
示例:head -n 10 file.txt 查看文件前10行。
tail:查看文件的最后几行。
tail [-f -num] 文件路径
参数:
-f 持续跟踪
-num 尾部多少行,不填默认10行
示例:tail -f -5 file.txt 查看文件最后5行并持续跟踪。
管道符|:将管道符左边命令的结果作为右边命令的输入
示例:cat test.txt | grep flag 从test.txt文件中输出包含flag的内容。
查找与搜索命令
find:在指定目录下查找文件或目录。
find 起始路径 -name “查找的文件名”
find 起始路径 -size +|-n[kMG]
+、-表示大于和小于;n表示大小;k(小写)、M、G为文件大小。
示例:
find /home -name "*.txt" 在 /home 目录下查找所有.txt 文件。*为通配符,进行模糊匹配。
find /home/-size -10k 在/home目录下查找所有小于10kb的文件
which:查看使用的一系列命令的程序文件路径
grep:在文件中搜索指定字符串。
grep -n 关键字 文件路径(可作为输入端口)
参数(可选):-n 显示匹配的行的行号。
示例:grep -n "hello" file.txt 在 file.txt 中搜索 hello 字符串。
locate:快速查找文件路径。
示例:locate file.txt
wc:统计
wc [-c -m -l -w] 文件路径
默认输出行数,单词数,字节数,文件名
参数:
-c 统计bytes数量
-m 统计字符数量
-l 统计行数
-w 统计单词数
示例:
wc flag.txt
wc -w flag.txt
用户与权限管理命令
sudo:以超级用户身份执行命令。
示例:sudo command 以管理员权限运行命令。
chmod:修改文件或目录的权限。
参数:
u:文件所有者
g:文件所属组
o:其他用户
a:所有用户
+:添加权限
-:去除权限
=:设置权限,会覆盖原来的权限
r:读,数值为4
w:写,数值为2
x:执行,数字为1
-R或–recursive:递归地更改指定目录及其所有子目录和文件的权限
示例:
chmod 755 file.sh 赋予文件 file.sh 可读、可写、可执行权限(所有者有完全权限,组和其他用户有读和执行权限)。
chmod u+x file.sh 给文件所有者添加执行权限。
chown:更改文件或目录的所有者。
示例:chown user:group file.txt 修改 file.txt 的所有者为 user,所属组为 group。
passwd:更改用户密码。
示例:passwd username 修改指定用户的密码。
系统管理命令
top:实时显示系统的资源使用情况,包括CPU、内存占用,进程信息。
ps:显示当前系统的进程状态。
示例:ps aux 显示所有进程及其详细信息。
kill:终止进程。
示例:kill PID 终止进程号为 PID 的进程。
shutdown:关闭系统。
示例:
shutdown -h now 立即关闭系统。
shutdown -r now 立即重启系统。
reboot:重启系统。
磁盘管理命令
df:查看文件系统的磁盘空间使用情况。
参数:-h 以人类可读的形式显示。
示例:df -h
du:查看文件或目录的磁盘空间使用情况。
参数:-h 以人类可读的形式显示。
示例:du -sh folder_name 查看目录 folder_name 的总大小。
fdisk:用于磁盘分区管理。
示例:fdisk /dev/sda
mount:挂载文件系统。
示例:mount /dev/sda1 /mnt 将设备 /dev/sda1 挂载到 /mnt 目录。
umount:卸载文件系统。
示例:umount /mnt 卸载 /mnt 下的文件系统。
软件包管理
根据不同的Linux发行版,软件包管理工具有所不同。
apt(适用于Debian系如Ubuntu):管理软件包的工具。
apt update:更新软件包列表。
apt upgrade:升级系统中已安装的软件包。
apt install package_name:安装软件包。
apt remove package_name:卸载软件包。
yum(适用于Red Hat/CentOS):用于软件包管理。
示例:yum install package_name
dnf:Fedora等较新版本的Red Hat系使用。
示例:dnf install package_name
网络操作命令
ping:检查主机网络连通性。
示例:ping google.com
ifconfig:查看和配置网络接口。
示例:ifconfig eth0 查看 eth0 网络接口的配置信息(较老命令,较新系统使用 ip 命令)。
ip:查看和管理网络接口。
示例:ip addr show 查看所有网络接口的IP地址。
netstat:显示网络连接、路由表等信息。
示例:netstat -an 显示所有活动的网络连接。
curl:从服务器获取数据,支持多种协议(HTTP、FTP等)。
示例:curl http://example.com 下载 example.com 的页面内容。
压缩与解压命令
tar:打包和解压缩文件。
示例:
tar -cvf archive.tar file1 file2 打包。
tar -xvf archive.tar 解压
tar -czvf archive.tar.gz file1 file2 压缩
tar -xzvf archive.tar.gz 解压缩
zip / unzip:压缩与解压缩ZIP文件。
示例:
zip archive.zip file1 file2 压缩
unzip archive.zip 解压。
时间管理命令
date:显示或设置系统日期和时间。
示例:date 显示当前系统时间。
cal:显示当前月的日历。
示例:cal 显示本月日历。
其他
ln:创建链接
参数:-s 创建符号链接(软链接)。不加-s则创建硬链接。
-f 强制创建链接,如果目标文件已存在,则先删除目标文件再创建链接。
-n 如果链接的目标是一个目录,将在该目录内创建链接,而不是链接到该目录。
示例:ln [选项] 源文件 目标文件
ln -s 源文件 目标文件
`:反引号,包围的内容作为命令执行
>和>>:重定向符
> :左侧命令的结果,覆盖写入到符号右侧指定的文件中。
>>:左侧命令的结果,追加写入到符号右侧指定的文件中。
echo:输出命令
echo 输出的内容
示例:
echo "hello Linux" 输出”hello Linux”
echo "flag" >> flag.txt 将flag写入到flag.txt文件
echo `pwd` 执行pwd命令



