bash shell报错:file: command not found

时间:2019-11-20 08:52:58  来源:igfitidea点击:

问题

执行file命令时,报错:

$ file /usr/sbin/ifconfig
file: command not found

解决方案

file命令确定Linux和类Unix系统上的文件类型。
file命令测试每个参数以尝试对其进行分类。
例如:可以使用file命令来检查给定的文件是Shell脚本还是Perl脚本。

file: command not found

检查/bin/ls的文件类型?

file /bin/ls

输出示例:

bash: file: command not found

使用type command/command command查看file命令是否存在:

$ type -a file
$ command -v file

使用echo查看PATH的设置:

$ echo "$PATH"

在Debian/Ubuntu Linux中安装file命令

使用apt命令搜索file文件所属的软件包

# apt info file

Package: file
Version: 1:5.35-4+deb10u1
Priority: standard
Section: utils
Maintainer: Christoph Biedl 
Installed-Size: 105 kB
Depends: libc6 (>= 2.4), libmagic1 (= 1:5.35-4+deb10u1), zlib1g (>= 1:1.1.4)
Homepage: https://www.darwinsys.com/file/
Download-Size: 66.4 kB
APT-Sources: http://security.debian.org/debian-security buster/updates/main amd64 Packages
Description: Recognize the type of data in a file using "magic" numbers
The file command is "a file type guesser", a command-line tool that
tells you in words what kind of data a file contains.
.
This package contains the file program itself.

N: There is 1 additional record. Please use the '-a' switch to see it

如何在Debian或Ubuntu Linux上安装file软件包

运行以下apt命令/apt-get命令:

sudo apt update && sudo apt upgrade
sudo apt install file

如何使用file命令?

语法为:

file /path/to/file
file [options] /path/to/file

示例

file /bin/ls
file /usr/sbin/adduser
file bin/mk.newsletter

在输出结果中,不显示文件名:

file -b /bin/date

输出示例:

ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=731c2a7a56b2d07e67ac99b4960ec700b3faad68, for GNU/Linux 3.2.0, stripped

如何查看zip压缩文件的内容

file -z file.zip

file命令的用法

查看帮助文档

# man file
# file --help
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
  -Z, --uncompress-noreport  only print the contents of 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:
                               apptype, ascii, cdf, compress, elf, encoding,
                               soft, tar, json, text, tokens
  -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
      --extension            output a slash-separated list of extensions
      --mime-type            output the MIME type
      --mime-encoding        output the MIME encoding
  -k, --keep-going           don't stop at the first match
  -l, --list                 list magic strength
  -L, --dereference          follow symlinks (default if POSIXLY_CORRECT is set)
  -h, --no-dereference       don't follow symlinks (default if POSIXLY_CORRECT is not set) (default)
  -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
  -P, --parameter            set file engine parameter limits
                               indir        15 recursion limit for indirection
                               name         30 use limit for name/use magic
                               elf_notes   256 max ELF notes processed
                               elf_phnum   128 max ELF prog sections processed
                               elf_shnum 32768 max ELF sections processed
  -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