Ubuntu 21.10でこのbashインストールスクリプトを作成しています。最初の部分をテストしようとしましたが、このエラーが発生しました。
/tmp/geany_run_script_GBYCG1.sh: 7: ./install sauerbraten 2020: Permission denied
(program exited with code: 126)
Press return to continue
これまでのスクリプトは次のとおりです。
#!/bin/bash
DIRECTORY="$(dirname "$(dirname "$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )")")"
function error {
echo -e "\\e[91m$1\\e[39m"
exit 1
}
wget https://sourceforge.net/projects/sauerbraten/files/sauerbraten/2020_11_29/sauerbraten_2020_12_29_linux.tar.bz2/download
#tar -xf
何が間違っていて、どのように解決しますか?
答え1
エラーはbashスクリプトではなく、Geanyがファイルを実行するために使用するシェルラッパースクリプトで発生します(F5を押すか、ビルド - >実行メニュー項目)。
基本ジニー実装するこれは、"./%f"
ファイル名を取得して次/tmp
のスクリプトでラップすることです。
#!/bin/sh
rm $0
cd '/home/username'
"./name of your file"
echo "
------------------
(program exited with code: $?)"
echo "Press return to continue"
#to be more compatible with shells like dash
dummy_var=""
read dummy_var
エラーはスクリプトの7行目で発生します。
"./name of your file"
./install sauerbraten 2020
許可ビットが原因でファイルを実行できないことを示します。ユーザーに実行ビットが設定されていない可能性があります。あなたはそれを修正することができます
chmod +x "./install sauerbraten 2020"