Linux 中软/硬连接、压缩/解压缩和重命名

Linux 中软/硬连接、压缩/解压缩和重命名

Linux中的软硬链接的使用

这个应用的在同一个linux服务器的同一个账号下不同虚拟环境下,多个项目/模型使用同一个数据集(just like MS COCO),使用软连接是一种绝妙的方法。

软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接。

具体用法是:ln -s 源文件 目标文件。

当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的 目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。

例如:

python
ln  -s /usr/local/mysql/bin/mysql  /usr/bin

这样我们就对/usr/bin目录下的mysql命令创建了软连接

  • 【硬连接】
    硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

  • 【软连接】
    另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

  • 使用方式

    创建软链接

    ln -s [源文件或目录] [目标文件或目录]

    例:

    当前路径创建test 引向/var/www/test 文件夹

    ln   –s    /var/www/test.  test
    

    创建/var/test 引向/var/www/test 文件夹

    ln  –s   /var/www/test  /var/test
    

    删除软链接

    和删除普通的文件是一样的,删除都是使用rm来进行操作

    例:

    删除test

    rm  –rf  test
    

    修改软链接

    ln –snf [新的源文件或目录] [目标文件或目录]

    这将会修改原有的链接地址为新的地址

    例如:

    创建一个软链接

    ln  –s  /var/www/test   /var/test
    

    修改指向的新路径

    ln   –snf   /var/www/test1  /var/test
    

常用参数:

  -f : 链结时先将与 dist 同档名的档案删除
  -d : 允许系统管理者硬链结自己的目录
  -i : 在删除与 dist 同档名的档案时先进行询问
  -n : 在进行软连结时,将 dist 视为一般的档案
  -s : 进行软链结(symbolic link)
  -v : 在连结之前显示其档名
  -b : 将在链结时会被覆写或删除的档案进行备份
  -S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
  -V METHOD : 指定备份的方式
  --help : 显示辅助说明
  --version : 显示版本

【参考文献】
(1)linux 软连接的使用
(2)linux 软连接【转】
(3)Linux软链接的创建,删除,修改

压缩和解压缩

  • zip命令(最常用/最推荐)
    解压:unzip filename.zip
    压缩:zip filename.zip dirname

  • tar
    解包:tar zxvf filename.tar
    打包:tar czvf filename.tar dirname

  • gz命令
    解压1:gunzip filename.gz
    解压2:gzip -d filename.gz
    压缩:gzip filename

    • .tar.gz 和 .tgz
      解压:tar zxvf filename.tar.gz
      压缩:tar zcvf filename.tar.gz dirname
      压缩多个文件:tar zcvf filename.tar.gz dirname1 dirname2 dirna me3.....
  • bz命令
    解压1:bzip2 -d filename.bz
    解压2:bunzip2 filename.bz
    .tar.bz
    解压:tar jxvf filename.tar.bz

  • z命令
    解压:uncompress filename.z
    压缩:compress filename

    • .tar.z
      解压:tar zxvf filename.tar.z
      压缩:tar zcvf filename.tar.z dirname
  • bz2命令
    解压1:bzip2 -d filename.bz2
    解压2:bunzip2 filename.bz2
    压缩:bzip2 -z filename

    • .tar.bz2

      解压:tar jxvf filename.tar.bz2
      压缩:tar jcvf filename.tar.bz2 dirname

Linux 重命名文件和文件夹

linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.

  • 例子:将目录A重命名为B

​ mv A B

  • 例子:将/a目录移动到/b下,并重命名为c

​ mv /a /b/c

​ 其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令就可以了,比如说我们要将一个名为abc的文件重命名为1234就可以这样来写:mv abc 1234,但是要注意的是,如果当前目录下也有个1234的文件的话,我们的这个文件是会将它覆盖的

  • linux下重命名文件或文件夹使用mv既可实现。
    例子:将一个名为abc.txt的文件重命名为1234.txt
    [root@station90 root]#mv abc.txt 1234.txt
posted @ 2021-06-08 20:12  AlanChens  阅读(1567)  评论(0编辑  收藏  举报