我试图使用Linux bc在两个浮点数之间进行除法,但是它抛出一个错误,并且我意识到当我运行bc时,它会执行Bandizip命令
$ bc
bc 6.08(Alpha) - Bandizip Command line tool. Copyright(C) 2011-2017 Bandisoft
Usage:
bc <command> [<switches>...] <archive> [<files>...] [<path_to_extract>]
<Commands>
a : Add files to archive
x : eXtract files with full pathname
t : Test integrity of archive
d : Delete files from archive
c : Create new archive(or overwrite exist file)
e : Extract files without directory names
<Switches>
- Stop switches scanning
-l:<0...9> Set compression level (0:store, 5:default, 9:maximal)
-r- Disable recursion (default)
-r Enable recurse subdirectories
-aoa Overwrite All existing files without prompt
-aos Skip extracting of existing files
-aou aUto rename extracting file
(for example, name.txt will be renamed to name (2).txt)
-sfx:[{name}] Create SFX archive
-zopfli Use Zopfli as deflate compressor(very slow)
-p:{password} Set password
-o:{dir} Specify target folder
-y Assume Yes on all queries
-fmt:{fmt} Specify archive format
(zip, zipx, exe, tar, tgz, lzh, iso, 7z, gz, xz)
-v:{size} Specify volume size(-v:1000000 -v:1440k -v:100MB ...)
-target:auto Extract to target path smartly
-target:name Extract to archive-name folder of target path
我无法卸载bandizip,也无法使用其他命令将两个浮点数相除,因为我已经使用bc编写了很多函数
如何解决这个问题?
答案 0 :(得分:1)
首先,bc应用程序必须存在于至少两个不同的目录中。
在我看来,您的Shell或系统中的PATH变量配置错误,因此它首先会找到错误 bc应用程序。
您可以从外壳程序中打印PATH变量,例如:
# echo $PATH
/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin
如您所见,有一个用冒号(:)分隔的路径列表,当您键入命令时(相对),将搜索这些路径。
这意味着对于上述路径,您的shell(例如bash)将按照以下顺序搜索命令,直到找到为止:
如果找不到该命令,则应该看到以下内容:
# pacman
pacman: Command not found.
由于很明显 bc 是计算器,因此,应确保在PATH变量的其他路径之前列出包含计算器 bc 的路径。
请确保安装 Bandizip Command 的人员将路径放入全局shell配置中,例如/etc/profile
。