你提到的 “centos extract” 一般是指在 CentOS 系统上写脚本去 解压 / 提取文件(如 tar、zip、gz 等)。下面给你几种常见场景的脚本示例。
#!/bin/bash
FILE=$1
DEST=${2:-./}
if [ ! -f "$FILE" ]; then
echo "文件不存在: $FILE"
exit 1
fi
case "$FILE" in
*.tar)
tar -xvf "$FILE" -C "$DEST"
;;
*.tar.gz|*.tgz)
tar -zxvf "$FILE" -C "$DEST"
;;
*.tar.bz2)
tar -jxvf "$FILE" -C "$DEST"
;;
*.tar.xz)
tar -Jxvf "$FILE" -C "$DEST"
;;
*)
echo "不支持的文件格式"
exit 1
;;
esac
使用:
chmod +x extract.sh
./extract.sh test.tar.gz /data/
#!/bin/bash
FILE=$1
DEST=${2:-./}
if [ ! -f "$FILE" ]; then
echo "文件不存在"
exit 1
fi
unzip "$FILE" -d "$DEST"
需要安装:
yum install -y unzip
#!/bin/bash
SRC_DIR="/data/packages"
DEST_DIR="/data/extract"
mkdir -p "$DEST_DIR"
for f in "$SRC_DIR"/*.tar.gz; do
echo "解压: $f"
tar -zxvf "$f" -C "$DEST_DIR"
done
#!/bin/bash
extract() {
if [ -f "$1" ]; then
case "$1" in
*.tar) tar -xvf "$1" ;;
*.tar.gz|*.tgz) tar -zxvf "$1" ;;
*.tar.bz2) tar -jxvf "$1" ;;
*.tar.xz) tar -Jxvf "$1" ;;
*.zip) unzip "$1" ;;
*) echo "未知格式: $1" ;;
esac
else
echo "文件不存在: $1"
fi
}
extract "$1"
tar -xvf file.tar
tar -zxvf file.tar.gz
tar -jxvf file.tar.bz2
unzip file.zip
如果你说的 “centos extract” 是别的意思(比如 extract 命令、rpm extract、ISO 提取、日志提取),告诉我具体场景,我可以给你更精确的脚本。