Linux的10个常用命令(二)

一、rmdir:删除空目录。

rmdir命令用于删除空目录。具体操作如下:

  1. 打开终端:在Linux系统中打开终端。

  2. 输入命令:输入以下命令格式:

    rmdir [选项] 目录名
    
  3. 选项说明:

    • -p:删除目录及其父目录,如果父目录为空,则会删除父目录。
  4. 目录名:要删除的目录的名称。

  5. 执行命令:按下Enter键执行命令。

注意事项:

  • rmdir命令只能删除空目录,如果目录中有文件或其他子目录,无法删除。
  • 如果要删除非空目录,可以使用rm命令,如rm -r 目录名
  • 需要有足够的权限来执行rmdir命令。

二、cp:复制文件或目录。

cp source destination:将 source 复制到 destination。

cp命令用于复制文件或目录。

基本语法: cp [选项] 源文件 目标文件

常用选项:

  • -r:递归地复制目录及其内容。
  • -i:交互模式,如果目标文件已经存在,则询问是否覆盖。
  • -f:强制复制,不询问是否覆盖。
  • -v:详细输出复制的过程。

示例操作:

  1. 复制文件: cp file1.txt file2.txt # 将file1.txt复制为file2.txt cp -i file1.txt file2.txt # 如果file2.txt已经存在,会询问是否覆盖

  2. 复制目录及其内容: cp -r dir1 dir2 # 将dir1目录及其内容复制到dir2中

  3. 复制多个文件到目标目录: cp file1.txt file2.txt dir/ # 将file1.txt和file2.txt复制到dir目录中

  4. 复制并改名: cp file1.txt new_file.txt # 将file1.txt复制为new_file.txt

  5. 复制时显示详细信息: cp -v file1.txt file2.txt # 显示复制的过程

注意事项:

  • 如果目标文件已经存在,cp命令会默认覆盖目标文件。
  • 如果要复制目录及其内容,需要使用-r选项。
  • 如果要复制多个文件到目标目录,目标目录必须是一个已存在的目录。
  • 复制文件或目录需要有足够的权限。

三、find:在目录树中查找文件

find /path -name "filename":在 /path 目录下查找名为 filename 的文件。

在Linux系统中,find命令用于在指定的目录及其子目录中查找符合特定条件的文件。

find命令的基本语法如下:

find [路径] [选项] [表达式]

常用的选项包括:

  • -name:按照文件名进行匹配,支持通配符。
  • -type:按照文件类型进行匹配,包括普通文件(f)、目录(d)、链接文件(l)等。
  • -size:按照文件大小进行匹配,支持使用+-操作符表示大于或小于某个size。
  • -mtime:按照文件修改时间进行匹配,支持使用+-操作符表示在某个时间前或后。
  • -exec:对匹配到的文件执行指定的命令。

一些常见的用法示例:

  • 查找当前目录下所有的文件:
    find . -type f
    
  • 查找当前目录及其子目录中所有的目录:
    find . -type d
    
  • 查找以.txt结尾的文件:
    find . -name '*.txt'
    
  • 查找大小大于10MB的文件:
    find . -size +10M
    
  • 查找最近7天内修改过的文件:
    find . -mtime -7
    
  • 对匹配到的文件执行操作,比如删除文件:
    find . -name '*.txt' -exec rm {} \;
    

以上是find命令的一些常用操作,更详细的命令用法可以参考find命令的帮助文档。

四、tar:打包或解包文件

tar -cvf archive.tar files:将 files 打包成 archive.tar。

tar命令是一个用于创建和提取归档文件的命令。下面是tar命令的一些常见操作:

  1. 创建归档文件:可以使用tar命令创建一个归档文件。例如,要创建一个名为archive.tar的tar归档文件,可以使用以下命令: tar -cvf archive.tar file1 file2 file3

    这将创建一个包含file1、file2和file3的归档文件。

  2. 查看归档文件内容:可以使用tar命令查看归档文件中的内容。例如,要查看archive.tar文件中的内容,可以使用以下命令: tar -tf archive.tar

    这将显示归档文件中的所有文件和目录。

  3. 提取归档文件:可以使用tar命令从归档文件中提取文件或目录。例如,要从archive.tar文件中提取所有文件,可以使用以下命令: tar -xvf archive.tar

    这将提取归档文件中的所有文件到当前目录。

  4. 添加文件到已有归档文件:可以使用tar命令将文件添加到已有的归档文件中。例如,要将file4添加到archive.tar文件中,可以使用以下命令: tar -rvf archive.tar file4

    这将将file4添加到archive.tar文件的末尾。

  5. 解压缩归档文件:可以使用tar命令解压缩归档文件。例如,要解压缩archive.tar文件,可以使用以下命令: tar -xvf archive.tar

    这将解压缩archive.tar文件中的所有文件到当前目录。

这些是tar命令的一些常见操作。tar命令还有更多功能和选项,可以使用man tar命令查看tar命令的完整帮助文档。

五、chmod:改变文件或目录的权限。

chmod 755 filename:将 filename 的权限设置为 755。

chmod命令用于修改文件或目录的权限。它可以通过三种不同的方式来指定权限:字符设定法、数字设定法和符号设定法。

  1. 字符设定法(Symbolic Mode): 使用字符设定法,可以使用用户、组和其他三个字符来指定权限。每个字符都有以下几种设置:

    • a: 所有权限
    • u: 用户权限
    • g: 组权限
    • o: 其他用户权限
    • +: 添加权限
    • -: 删除权限
    • =: 设置权限

    示例:

    • chmod u+r file:为文件的所有者添加读权限
    • chmod g-w file:从文件的所属组删除写权限
    • chmod o=x file:设置其他用户的执行权限
    • chmod a+rw file:为所有用户添加读写权限
  2. 数字设定法(Numeric Mode): 使用数字设定法,每个权限都用一个数字来表示,如下所示:

    • 4: 读权限
    • 2: 写权限
    • 1: 执行权限

    示例:

    • chmod 755 file:设置文件的权限为 rwxr-xr-x
    • chmod 644 file:设置文件的权限为 rw-r--r--
  3. 符号设定法(Absolute Mode): 使用符号设定法可以直接指定权限值,如 chmod 777 file 直接将文件的权限设置为 rwxrwxrwx。

以上就是使用chmod命令修改文件或目录权限的具体操作。

六、chown:改变文件或目录的所有者和所属组。

chown user:group filename:将 filename 的所有者和所属组分别设置为 user 和 group。

chown命令用于更改文件或目录的所有者。它的具体操作如下:

  1. 使用chown命令需要超级用户(root)权限,或者你必须是文件或目录的原始所有者。

  2. 基本语法:chown [选项] [新所有者] 文件/目录

  3. 选项: -c:仅在发生更改时输出提示信息。 -f:即使文件或目录不存在也不显示错误信息。 -h:如果目标文件是一个符号链接,直接更改链接的所有者而不是链接的目标文件。 -R:递归地更改指定目录及其子目录中的所有文件和目录的所有者。 -v:显示详细的操作信息。

  4. 新所有者:可以是用户名或用户ID,也可以是用户组名或用户组ID。

  5. 示例:

    • 更改文件所有者:sudo chown john file.txt
    • 更改目录所有者:sudo chown john directory/
    • 递归更改目录及其子目录下所有文件的所有者:sudo chown -R john directory/
    • 更改文件所属用户组:sudo chown :staff file.txt
    • 递归更改目录及其子目录下所有文件的所属用户组:sudo chown -R :staff directory/

注意:

  • 使用chown命令需要谨慎,因为更改文件或目录的所有者可能会导致权限问题或其他意外情况。
  • 在使用chown命令时,要确保提供正确的用户名、用户组名或用户/组ID。

七、df:显示磁盘空间使用情况。

df -h:以人类可读的格式显示磁盘空间使用情况。

Linux系统中的df命令用于显示磁盘空间的使用情况。具体操作如下:

  1. 打开终端窗口,输入df命令,按下回车键。

  2. 默认情况下,df命令会显示所有挂载点的磁盘空间使用情况。输出结果中的每一行都表示一个挂载点和其对应的磁盘使用情况。

  3. 如果只想显示特定文件系统的磁盘使用情况,可以在df命令后面加上要显示的文件系统路径。例如,df /dev/sda1 只会显示/dev/sda1文件系统的磁盘使用情况。

  4. 可以使用-h选项来以人类可读的方式显示磁盘使用情况。即以KB、MB、GB等单位显示磁盘大小。

  5. 如果想要指定输出结果中的列数,可以使用-P选项。例如,df -P只会显示挂载点、文件系统大小、已用空间、可用空间和使用率这五列的信息。

  6. 除了显示磁盘空间使用情况外,df命令还可以显示文件系统的inodes使用情况。通过使用-i选项,可以查看文件系统的inode使用情况。

  7. 如果想要将输出结果保存到文件中,可以使用重定向功能。例如,df > disk_usage.txt将输出结果保存到名为disk_usage.txt的文件中。

需要注意的是,df命令只会显示已经挂载的文件系统的磁盘使用情况。如果有新的文件系统被挂载,需要重新运行df命令才能显示其磁盘使用情况。

八、du:显示目录或文件的磁盘使用情况。

du -sh directory:显示 directory 的总磁盘使用情况。

du命令用于查看目录或文件的磁盘使用情况。以下是du命令的具体操作:

  1. du命令的基本语法:

    du [选项] [目录或文件名]
    

    查看目录的磁盘使用情况:

  2. du 目录名
    

    查看当前目录的磁盘使用情况:

  3. du .
    

    查看文件的磁盘使用情况:

  4. du 文件名
    

    以人类可读的格式显示磁盘使用情况:

  5. du -h 目录或文件名
    

    显示总的磁盘使用量:

  6. du -s 目录或文件名
    

    显示目录及其子目录的磁盘使用情况:

  7. du -d 深度 目录名
    

    排除指定目录或文件的磁盘使用情况:

  8. du --exclude=目录或文件名 目录名
    

    以递归方式显示磁盘使用情况,包括隐藏的文件和目录:

  9. du -a 目录名
    

    找出磁盘使用最大的文件或目录:

  10. du -h 目录名 | sort -h
    

    将结果输出到文件:

  11. du 目录名 > 文件名
    

    请注意,上述命令中的选项可以组合使用,以满足不同的需求。

九、ps:查看进程状态。

ps -ef:显示所有进程的详细信息。

ps命令是用来查看当前正在运行的进程的信息。在Linux系统中,ps命令可以使用不同的选项来获取不同的进程信息。以下是ps命令的一些常用选项:

  1. ps -A:显示所有进程的信息。
  2. ps -aux:显示详细的进程信息,包括进程的所有者和资源使用情况。
  3. ps -ef:显示所有进程的全格式信息。
  4. ps -ejH:显示树状结构的进程信息,包括进程的父进程和子进程。
  5. ps -o pid,ppid,cmd,%mem,%cpu:自定义输出的列,可以选择显示进程的ID、父进程的ID、命令、内存占用率和CPU占用率等信息。
  6. ps -C <command>:显示指定进程名的信息。
  7. ps -p <pid>:显示指定进程ID的信息。
  8. ps -t <tty>:显示指定tty终端下的进程信息。
  9. ps -u <username>:显示指定用户的进程信息。
  10. ps -H:显示进程的层次关系,包括进程的父进程和子进程。

使用ps命令时,可以结合不同的选项来获取需要的进程信息。例如,ps -aux | grep "nginx" 可以查找正在运行的nginx进程。

十、kill:终止进程。

kill PID:终止进程 ID 为 PID 的进程。

在Linux系统中,kill命令用于终止正在运行的进程。具体使用方法如下:

  1. 打开终端,输入以下命令:kill PID,其中PID为要终止的进程的进程ID。可以使用ps命令查找进程ID。

  2. 可以使用killall命令终止指定进程名的所有进程。例如:killall firefox将终止所有名为firefox的进程。

  3. 使用kill -l命令可以列出所有信号的名称和对应的编号。

  4. 默认情况下,使用kill命令发送SIGTERM信号终止进程。如果进程无法正常终止,可以使用kill -9 PID命令发送SIGKILL信号强制终止进程。

  5. 可以使用killall -s SIGNAL_NAME命令发送指定信号终止进程。例如:killall -s SIGHUP firefox将发送SIGHUP信号给所有名为firefox的进程。

  6. 使用kill -l命令显示的信号编号可以直接使用,也可以使用信号名称。例如:kill -9 PIDkill -s SIGKILL PID等效。

请注意,kill命令需要合适的权限才能终止其他用户的进程。

这些命令只是Linux中常用命令的一小部分,实际上Linux提供了大量的命令和工具,用于执行各种复杂的任务。对于初学者来说,建议从基础命令开始学习,并随着经验的积累逐渐掌握更多高级命令和用法。

##欢迎关注交流

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

runqu

你的鼓励是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值