bash 脚本因命令而失败

时间:2021-03-28 11:38:10

标签: linux bash permissions sudo

我有以下脚本

#!/bin/bash

VERSION=2020-12-R1
LINK_LIBRERIA=https://github.com/greatscottgadgets/ubertooth/archive/refs/tags/$VERSION.tar.gz
LINK_UBERTOOTH=https://github.com/greatscottgadgets/ubertooth/releases/download/$VERSION/ubertooth-$VERSION.tar.xz


LIBRERIA=libbtbb-$VERSION.tar.gz
## Instalacion de las librerias


SUCESS=1
while [ $SUCESS -eq 1 ]
do
  echo "Select Instalation Directory, left EMPTY for use the actual directory"
  read PATH

  if [ -z $PATH ] 

  then
      PATH=$( pwd )
  fi

  cd $PATH
  SUCESS=$?

done

sudo apt-get -y install cmake libusb-1.0-0-dev make gcc g++ libbluetooth-dev \
pkg-config libpcap-dev python-numpy python-pyside python-qt4 -y

# wget $LINK_BASE_LIBRERIA -O $LIBRERIA
# tar xf $LIBRERIA


当我运行它时,它会提示:

./main.sh: line 29: sudo: command not found

此问题与注释命令 wgettar

相同

ugo 特权是:

$ ls -l
total 12
-rw-rw-r-- 1 k1k4ss0 k1k4ss0 1064 Mar 27 18:21 LICENSE
-rwxrwxrwx 1 k1k4ss0 k1k4ss0  726 Mar 28 12:31 main.sh
-rw-rw-r-- 1 k1k4ss0 k1k4ss0   81 Mar 27 18:21 README.md

我几乎都尝试过,但我不知道为什么,我在互联网上搜索并寻找一些包含类似命令的脚本,但问题仍然存在。

1 个答案:

答案 0 :(得分:1)

@Jetchisel 评论中说的问题是 PATH 变量,解释器把它和全局变量的 PATH 混淆了,改成小写即可解决问题