1. 程式人生 > >Linux file命令詳解

Linux file命令詳解

play $2 table lastlog CI rep 案例 blog auto

file: 查看文件類型

file常見命令參數

Usage: file [OPTION...] [FILE...]
Determine type of FILEs.

      --help                 display this help and exit
  -v, --version              output version information and exit
  -m, --magic-file LIST      use LIST as a colon-separated list of magic
                               number files
  -z, --uncompress           try to look inside compressed files
  -b, --brief                do not prepend filenames to output lines
  -c, --checking-printout    print the parsed form of the magic file, use in
                               conjunction with -m to debug a new magic file
                               before installing it
  -e, --exclude TEST         exclude TEST from the list of test to be
                               performed for file. Valid tests are:
                               ascii, apptype, compress, elf, soft, tar, tokens, troff
  -f, --files-from FILE      read the filenames to be examined from FILE
  -F, --separator STRING     use string as separator instead of `:‘
  -i, --mime                 output MIME type strings (--mime-type and
                               --mime-encoding)
      --apple                output the Apple CREATOR/TYPE
      --mime-type            output the MIME type
      --mime-encoding        output the MIME encoding
  -k, --keep-going           don‘t stop at the first match
  -L, --dereference          follow symlinks (default)
  -h, --no-dereference       don‘t follow symlinks
  -n, --no-buffer            do not buffer output
  -N, --no-pad               do not pad output
  -0, --print0               terminate filenames with ASCII NUL
  -p, --preserve-date        preserve access times on files
  -r, --raw                  don‘t translate unprintable chars to \ooo
  -s, --special-files        treat special (block/char devices) files as
                             ordinary ones
  -C, --compile              compile file specified by -m
  -d, --debug                print debugging messages

常用的命令展示

file /var/log/secure* -->顯示是二進制文件

file /var/log/lastlog -->顯示是data文件 -->不能cat –> 只能last命令查看

shell腳本小工具之萬能解壓和壓縮器

【更多參考】https://blog.csdn.net/u010111874/article/details/51655856

#!/bin/bash
#腳本說明
#壓縮案例: sh ./ext.sh en /root/a.zip ./test 壓縮類型 壓縮後的文件名 要壓縮的文件或者目錄
#解壓案例: sh ./ext.sh de ./a.zip 壓縮類型 解壓的文件名 (默認當前目錄)
type=$1 #壓縮類型,en表示壓縮,de表示解壓
filename=$2 #文件名
to_filename=$3 #如果是壓縮則是選擇壓縮的文件,解壓則是輸出的文件路徑
ext="${filename##*.}" #獲取到文件名的後綴
if [ ! $filename ]
then
        #沒有傳入參數
        echo ‘error(100)not file(tar|gz|bz2|zip|rar)‘
        exit 0
fi
if [ $type = ‘en‘ ]
then
        #壓縮至
        #匹配相應的文件
        case $ext in
        ‘tar‘)
                eval "tar cvf $filename $to_filename"
                ;;
        ‘gz‘)
                eval "tar zcvf $filename $to_filename"
                ;;
        ‘bz2‘)
                eval "tar jcvf $filename $to_filename" 
                ;;
        ‘zip‘)
                eval "zip $filename $to_filename"
                ;;
        *)
                #不支持該類型
                echo ‘error(101)This type is not supported(tar|gz|bz2|zip)‘
                ;;
        esac
else
        #解壓至
        #匹配相應的文件
        case $ext in
        ‘tar‘)
                eval "tar xvf $filename"
                ;;
        ‘gz‘)
                eval "tar zxvf $filename"
                ;;
        ‘bz2‘)
                eval "tar jxvf $filename"
                ;;
        ‘zip‘)
                eval "unzip $filename"
                ;;
        *)
                #不支持該類型
                echo ‘error(101)This type is not supported(tar|gz|bz2|zip)‘
                ;;
        esac
fi

Linux file命令詳解