首页 > 系统相关 >Linux文件解压脚本实现

Linux文件解压脚本实现

时间:2023-09-28 18:36:34浏览次数:36  
标签:解压 脚本 tar successfully filename Linux Directory echo Out


根据不同的文件结尾后缀对文件进行解压缩

extract_file.sh

#!/bin/bash
#Author:ztj
#Date:2023/5/6
#Description:extract compressed file

NOARGS=65
NOTFOUND=66
Out_Directory=/tmp

if [ $# -eq 0 ];then
  echo "Usage: `basename $0` filename" >&2
  exit $NOARGS
fi

filename=$1

if [ ! -f "$filename" ];then
  echo "File $filename not found,please check it!" >&2
  exit $NOTFOUND
else
  case $filename in
  *.gz) 
     tar -zxvf $filename -C $Out_Directory &>/dev/null
     echo "$filename is extracted successfully."
     ;;
  *.bz2) 
     tar -jxvf $filename -C $Out_Directory &>/dev/null
     echo "$filename is extracted successfully."
     ;;
  *.xz)
     tar -Jxvf $filename -C $Out_Directory &>/dev/null
     echo "$filename is extracted successfully."
     ;;
  *.tar)
     tar -xvf $filename -C $Out_Directory &>/dev/null
     echo "$filename is extracted successfully."
     ;;
  *) 
     echo "对不起,无法识别文件格式!"
     ;;
  esac
fi

标签:解压,脚本,tar,successfully,filename,Linux,Directory,echo,Out
From: https://blog.51cto.com/ztj1216/7641599

相关文章

  • Linux命令(79)之tr
    linux命令之tr1.tr介绍linux命令tr用于转换或删除文件中的字符。tr命令只能对标准输入进行操作,不能直接对文件进行操作2.tr用法tr[参数][标准输入]tr参数常规说明参数说明-s将多个连续的字符压缩为一个字符-d删除指定的字符-t对指定的字符进行替换-c将指定字符外的字符替换......
  • Linux命令(78)之read
    linux命令之read1.read介绍linux命令read用来接收键盘或其它文件的输入,得到输入后,read命令将接收的数据放入到标准变量中。2.read用法read[参数][变量名称]read常用参数参数说明-p后面跟提示信息-e可以使用命令补全功能-n输入文本的长度-s输入字符时不再屏幕上显示,例如:logi......
  • linux下shell脚本实现wordpress搭建
    wordpress_auto_install.sh  #!/bin/bashuser=$(whoami)functionwordpress_auto_install(){if[$user=="root"];thenecho"前提:调整系统配置,如关闭selinux、firewall等!"sed-i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/......
  • 【脚本】统计视频的帧数、fps、时长、以固定fps进行采样后的时长
    输入:存放有很多视频文件的文件夹路径输出:包含采样前后视频信息的csv文件importosimportcv2importpandasaspdimportnumpyasnpfromPILimportImagedefget_videos(vidname,read_path):allframes=[]videoins=read_path+vidnamevvv=cv2.Vi......
  • 玩转Redhat Linux 8.0系列 | 使用BASH SHELL执行命令
    今天继续分享一些RedhatLinux8.0的知识,记得关注,会一直更新~基本命令语法GNUBourne-AgainShell(bash)这一程序可以解读用户键入的命令。当您准备好执行命令时,请按Enter键。在单独的行上键入每个命令。系统会显示命令输出,然后显示下一shell提示符。[user@host]$whoamiuser[u......
  • 13 | Linux系统安全:多人共用服务器,如何防止别人干“坏事”?
    Linux中的安全模型内核层防护:确保使用官方的镜像并保持更新用户层防护:确保正确配置权限 黄金法则应用Linux中的认证机制安全问题:认证是linux内核提供的,在用户层只需要关注弱密码导致的身份信息泄露防护:在/etc/shadow中,制定适当的密码策略;使用已知的弱密码库来检测linux中......
  • [Linux] shell文本处理记录 - 查找、增删特定行及附近行
    转:https://blog.csdn.net/wy_hhxx/article/details/127416595查找username所在行并删除此行,输出到新文件sed'/username/,+d'04filename.log>04filename_new.log 目录1.grep查找关键字所在行号、查找关键字前后行2.sed删除指定行及其前后若干行3.sed在匹配行前或后添......
  • Linux任务的状态机制
    task的生命周期Linux内核调度就是管理CPU硬件资源,同时决定多任务系统的每一个task应该什么时候上CPU,上CPU运行多久的一个机制。因此调度的机制涉及到两个方面一个是task侧,一个是CPU侧,任务是被管理的对象之一,会随着调度和运行改变状态。因此从task的角度来理解调度机制我认为是一......
  • Frp搭建脚本
    #!/bin/bashcat<<EOFfrp_pag变量改成frp包路径如/usr/local/src/frp_version变量改为frp包名如frp_0.51.3_linux_386.tar.gz若安装客户端请教WIP改为云主机公网地址EOFfrp_pag=/tmp/frp_0.51.3_linux_386.tar.gz########env########Frp_Dir=/etc/frp/Frp_Log_Dir=/var/l......
  • 源码编译nginx安装脚本
    #!/bin/bashprofile(){echo"installingrelyon...."yum-yinstallgccgcc-c++pcrewgetopensslopenssl-devellibtoolgdgd-develecho"dowloadnginx_1.18......"cd/usr/local/src&&wgethttps://nginx.org/download/nginx-1.......