ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux 常用的操作命令汇总(持续更新~)

2022-01-21 10:31:07  阅读:270  来源: 互联网

标签:文件 操作命令 删除 zip ## 汇总 Linux rm find


ls /  查看根目录下的所有文件和文件夹(不显示详细信息)。这里如果把/换成某个文件夹全路径(如 ls /root),则显示的是文件夹内的信息;

ls -l /    -l 显示详细信息(等价于ll /  ll 是 ls -l的缩写)

 ll -a  -a 显示隐藏文件(隐藏文件以“.”开头,同windows下的隐藏文件) 

 ll -h /   -h 以更可读的形式展示内容(文件大小的单位会自动转换为最合适的,如下单位变成了K)

 ll -i    -i 显示inode节点(每个文件都有一个inode用于全局唯一标识),注意这里没有指定路径,则默认是当前路径

 ll -S  -S 按照文件大小从大到小排序(默认是从小到大排序)

ll -t   -t 按照文件修改时间排序(从当前时间往后排序,倒数第二列是修改时间) 

ll -tr   -r 表示反向排序 

编辑的相关命令:
    1.vi 文件名      进入一般模式;
    2.按 i 进行编辑   进入编辑模式 ;(或者I, o, O, a, A, r, R)
    3.编辑结束,按ESC 键 跳到一般模式模式;
    4.按:     进入指令列命令模式 ;
 
进入指令列模式后的命令如下
1.保存不退出:
    :w 保存文件但不退出vi 编辑
    :w! 强制保存,不退出vi 编辑
    :w file 将修改另存到file中,不退出vi 编辑
 
2.保存并退出:
    :wq 保存文件并退出vi 编辑
    :wq! 强制保存文件并退出vi 编辑


3.不保存并退出:
    :q 不保存文件并退出vi 编辑
    :q! 不保存文件并强制退出vi 编辑
    :e! 放弃所有修改,从上次保存文件开始在编辑 

关机命令:

1、halt 立刻关机
2、poweroff 立刻关机
3、shutdown -h now 立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机

注:如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启。

重启命令:

1、reboot
2、shutdown -r now 立刻重启(root用户使用)
3、shutdown -r 10 过10分钟自动重启(root用户使用)
4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用)

文件压缩及解压

1. tar 命令

语法: tar [主选项 + 辅选项] 文件或目录

        # 压缩文件 file1 和目录 dir2 到 test.tar.gz
                tar -zcvf test.tar.gz file1 dir2
        # 解压 test.tar.gz(将 c 换成 x 即可)
                tar -zxvf test.tar.gz
        # 列出压缩文件的内容
                tar -ztvf test.tar.gz 
 
        释义
        -z : 使用 gzip 来压缩和解压文件
        -v : --verbose 详细的列出处理的文件
        -f : --file=ARCHIVE 使用档案文件或设备,这个选项通常是必选的
        -c : --create 创建一个新的归档(压缩包)
        -x : 从压缩包中解出文件 

2. rar 命令

        # 压缩文件
                rar a -r test.rar file
        # 解压文件
                unrar x test.rar
 
        释义
        a : 添加到压缩文件
        -r : 递归处理
        x : 以绝对路径解压文件

3. zip 命令

        # 压缩文件
                zip -r test.zip file
        # 解压文件
                unzip test.zip
 
        释义
        -r : 递归处理

删除目录中指定文件及目录下文件 

删除当前目录下的文件

1.rm -f *   #最经典的方法,删除当前目录下的所有类型的文件

2.find . -type f -delete或find . -type f -exec rm -f {} \;

        #用find命令查找普通文件并删除or用find命令的处理动作将其删除

3.find . -type f | xargs rm -f   #用于参数列表过长;要删除的文件太多

4.rm-f find . -type f   #删除全部普通文件

5.for delete in ls -l;do rm -f * ;done   #用for循环语句删除当前目录下的所有类型的文件

删除指定目录下的文件

1.rm -f 指定目录*   #最经典的方法,删除指定目录下的所有类型的文件

2.find 指定目录 -type f -delete或find 指定目录 -type f -exec rm -f {} \;

        #用find命令查找指定目录下的所有普通文件并删除or用find命令的处理动作将其删除

3.find 指定目录 -type f | xargs rm -f   #用于参数列表过长;要删除的文件太多

4.rm-f find 指定目录 -type f   #删除指定目录下的全部普通文件

5.for delete in ls –l 指定目录路径;do rm -f * ;done

        #用for循环语句删除指定目录下的所有类型的文件

6.ls -t|tail -10|xargs rm -fr   #按时间排序,删除最后10个文件

#下面这种写法和上面的效果相同

ls -lt|tail -10|awk '{print $9}'|xargs rm -rf

删除目录中的特定文件

方式一

        如果需要清理一个下载目录中的文件,其实就是想从~/Download/文件夹删去除了以下格式的文件外所以其它文件:

        *.iso - 所有的iso格式的文件。
        *.zip - 所有zip格式的文件。
如何在一个基于Linux,OS X 或者 Unix-like 系统上的bash shell中删除特定的文件呢?

Bash shell 支持丰富的文件模式匹配符例如:

        * - 匹配所有的文件。
        ? - 匹配文件名中的单个字母。
        [...] - 匹配封闭括号中的任何一个字母。

扩展的模式匹配符,在这里需要用系统内置的shopt命令来开启shell中的extglob选项,然后就可以使用扩展的模式符了,这些模式匹配符如下:

        ?(模式列表) - 匹配零次或一次给定的模式。
        *(模式列表) - 匹配零次或多次给定的模式。
        +(模式列表) - 至少匹配一次给定的模式。
        @(模式列表) - 匹配一次给定的模式。
        !(模式列表) - 不匹配给定模式。


一个模式列表就是一个或多个用 | 分开的模式(文件名),在Bash中删掉除.zip和.iso文件以外的所有文件 

rm 命令的语法格式为:

## 仅保留 file1 文件 ##
rm !(file1)
 
## 仅保留 file1 和 file2 文件##
rm !(file1|file2)
 
## 仅保留 zip 文件 ##
rm !(*.zip)
 
## 仅保留 zip 和 iso 文件 ##
rm !(*.zip|*.iso)
 
## 你也可以使用完整的目录 ##
rm /Users/vivek/!(*.zip|*.iso|*.mp3)
 
## 也可以传递参数 ##
rm [选项] !(*.zip|*.iso)
rm -v !(*.zip|*.iso)
rm -f !(*.zip|*.iso)
rm -v -i !(*.php)

方式二

使用bash的 GLOBIGNORE 变量删除指定文件以外的所有文件;

用冒号分开的模式列表,通过路径展开方式定义了要忽略的文件集合。如果一个匹配到路径展开模式的文件也匹配GLOBIGNORE中的模式,那么它会从匹配列表中移除。

要删除所有文件只保留 zip 和 iso 文件,应如下设置 GLOBIGNORE:

  1. ## 只在 BASH 中可行 ##
  2. cd ~/Downloads/
  3. GLOBIGNORE=*.zip:*.iso
  4. rm -v *
  5. unset GLOBIGNORE

方式三

用 find 命令删除所有其它文件仅保留 zip 和 iso 文件

如果所使用的是 tcsh/csh/sh/ksh 或者其它shell,可以在Unix-like系统上试着用下面find命令的语法格式来删除文件:

find /dir/ -type f -not -name '匹配模式' -delete

或者  

## 对于怪异的文件名可以使用 xargs ##
find /dir/ -type f -not -name '匹配模式' -print0 | xargs -0 -I {} rm {}
find /dir/ -type f -not -name '匹配模式' -print0 | xargs -0 -I {} rm [选项] {}


想要删除 ~/source 目录下除 HTML以外的文件,语法:

find ~/sources/ -type f -not -name '*.HTML' -delete

 或者

find ~/sources/ -type f -not -name '*.HTML' -print0 | xargs -0 -I {} rm -v {}
        

只保留 *.zip 和 *.iso 文件的语法如下:

find . -type f -not −name′∗zip′−or−name′∗iso′−name′∗zip′−or−name′∗iso′ -delete

标签:文件,操作命令,删除,zip,##,汇总,Linux,rm,find
来源: https://blog.csdn.net/u013869554/article/details/122541136

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有