[英]Bash script not running in Ubuntu
我開始使用bash腳本並按照一個簡短的指南制作了這個小腳本,但是由於某種原因,當我使用sh myscript
運行該腳本時,
myscript: 5: myscript: 0: not found running on ubuntu 12.04
這是我的腳本,如果沒有設置參數,我至少應該看到回顯消息:
#!/bin/bash
#will do something
name=$1
username=$2
if (( $# == 0 ))
then
echo "##############################"
echo "myscript [arg1] [arg2]"
echo "arg1 is your name"
echo "and arg2 is your username"
fi
var1="Your name is ${name} and your username is ${username}"
`echo ${var1} > yourname.txt`
`echo ${var1} > yourname.txt`
擺脫反感。
echo ${var1} > yourname.txt
...由於某種原因,當我使用
sh myscript
運行腳本時...
不要那樣運行。 使腳本可執行並直接運行
chmod +x myscript
./script
(或顯式運行bash myscript
)。
看起來該表達式可以在bash中運行,但不能在sh中運行。 正如其他人指出的那樣,將其更改為可執行文件,請確保您的shebang行正在使用bash並按以下方式運行它:
./myscript
如果要使用sh運行它,那么它將抱怨第5行。將其更改為該行,它將在/ bin / sh中運行。
if [ $# -ne 0 ]
查看手冊頁進行測試。
同樣,您也不需要此行上的反引號:echo $ {var1}> yourname.txt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.