1樓:匿名使用者
恩,我也試了下,說說我的看法,
3 (tableau_os[2]=$) & (tableau_os[1]=$)
注意到兩個賦值語句都有小括號,這在shell的執行過程中會單獨看一個子shell來執行這兩個賦值,但需要注意這兩個賦值對父shell沒有影響,也就是說tableau_os[1],tableau_os[2]的值在父shell中並沒有改變,為了證明這一點,可以寫下面這個指令碼執行
#!/bin/sh
a=1(a=2)
echo $a
結果輸出為1。所以3的輸出結果是對的
4.tableau_os[2]=$ & tableau_os[1]=$如果你想表達並的意思,我覺得應該用&&而不是&,若用&&的輸出結果為
linux windows windows linux~freebsd
單獨一個&是把命令放入後臺執行的意思,而非並的意思,這樣的話也能解釋你的那個輸出結果,因為賦值被放入後臺,並不能把賦值返回父shell,所以相當於只執行了tableau_os[1]=$
希望對你有幫助
2樓:shine雪瑞
3 (tableau_os[2]=$) & (tableau_os[1]=$)
注意到兩個賦值語句都有小括號,這在shell的執行過程中會單獨看一個子shell來執行這兩個賦值,但需要注意這兩個賦值對父shell沒有影響,也就是說tableau_os[1],tableau_os[2]的值在父shell中並沒有改變,為了證明這一點,可以寫下面這個指令碼執行
#!/bin/sh
a=1(a=2)
echo $a
結果輸出為1。所以3的輸出結果是對的
4.tableau_os[2]=$ & tableau_os[1]=$如果你想表達並的意思,我覺得應該用&&而不是&,若用&&的輸出結果為
linux windows windows linux~freebsd
單獨一個&是把命令放入後臺執行的意思,而非並的意思,這樣的話也能解釋你的那個輸出結果,因為賦值被放入後臺,並不能把賦值返回父shell,所以相當於只執行了tableau_os[1]=$
linux shell指令碼while程式設計的問題
3樓:匿名使用者
這個在句法上有問題,在「」要與判斷條件之間要有空格。
另外,就是你這個迴圈語句是一個死迴圈,最好是加一個判斷語句,好跳出迴圈。
4樓:
中括號前後都要有空格吧。
而且我在solaris上試了一下,你這個是死迴圈,一直不停地輸出0。
5樓:轉轉耳朵
是你的程式寫的有問題,while 後面的裡面,要加上前後空格。
要像這樣:
#!/bin/bash
i=5while [ $i -gt 0 ];
doecho "$i"
i=$[ i - 1 ]
done
linux(shell)指令碼程式設計題目求教,謝謝(200分,滿意繼續追加分)
6樓:匿名使用者
先佔下樓層,空了慢慢給你做!
先做第一題1月12日:
#!/bin/bash
echo this "date" :`date`;
echo this "cal" :`cal`;
echo this "pwd" :`pwd`;
echo this "ls" : `ls`.
第二題1月12日:
這個沒法寫了撒 太籠統;建議翻翻書。
我列個環境變數的例子吧:
#!/bin/bash
echo "第二題":
test_dir=/root
export $test_dir;
echo "環境變數test_dir是/root".
第三題1月12日:
#!/bin/bash
echo "第三題for":
echo "3.1 for"
x=0for ((i=1 ; i<101 ;i++));
do x=$(($x+$i))
done
echo $x
echo "---------------------------------"
echo "第三題while":
echo "3.2 while"
x=0i=1
while [ $i -lt 101 ]
doi=$(($i+1))
x=$(($x+$i))
done
echo $x
第三題第二個
#!/bin/bash
echo "3.2"
function fib
n=10
for ((i = 0; i < $n; i++))doprintf "fib(%2d) = %d\n" $i $(fib $i)
done
linux shell程式設計:shell 指令碼引數問題! 10
7樓:匿名使用者
關於引數傳遞:
假我要獲取/home某目錄text.txt檔案某目錄我原先知道所需要先使用:
ls -l /home
獲取/home目錄資訊
現需要ls -l /homels -l $filenamemore text.txt三命令寫同shell
該寫$filename傳遞
寫簡單程式
#!/bin/bash
i=0while [$i]
doecho "$i"
done
程式始報錯:
snytax error near unexpected token 'do'
並且管我寫任何內容要while控制語句報種錯誤我程式問題linux問題
linux shell的if語句
8樓:本思一體電腦
echo "你繼續嗎?y or n"
read answer
if [ 「$answer」 = 「y」 -o 「$answer」 = 「y」 ] ; then
echo "你選擇了$answer";
elif [ 「$answer」 = 「n」 -o 「$answer」 = 「n」 ] ; then
echo "你選擇了$answer";
else
echo "輸入錯誤"
exit
fi-----你試試
9樓:匿名使用者
#/bin/bash
read -p "你繼續嗎?y or n:" answer
if [ "$answer" = "y" -o "$answer" = "y" ] ; then
echo "你選擇了 $answer"; #如果要顯示為你選擇了y或y則改為 echo "你選擇了y或y"
elif [ "$answer" = "n" -o "$answer" = "n" ] ; then
echo "你選擇了$answer"; #如果要顯示為你選擇了n或n則改為 echo "你選擇了n或n"
else
echo "輸入錯誤"
exitfi
10樓:匿名使用者
指令碼沒有問題,應該是你用的預設shell問題,用sh或bash執行一下試試,在指令碼第一行加上
#!/bin/sh
11樓:匿名使用者
read -p "你繼續嗎?(y/n):" ynif [ $yn == y -o $yn == y ]; thenecho "你選擇了$yn!"
elif [ $yn == n -o $yn == n ]; then
echo "你選擇了$yn!"
else
echo "輸入錯誤"
exit 1
fi主要是注意一下read的用法
shell指令碼程式設計問題:[a-z]與[a-z]無法區別開!
12樓:匿名使用者
shell的case語句對大小寫字母的區分是有問題,這是已知的。
解決的方法有下面兩回種:
1. 在指令碼最前答面加入如下句: export lc_all=c作用就是 specifies the ansi c locale2.
將判斷條件作如下改動(改為符合posix標準的集合):
[a-z] 改為 [[:upper:]]
[a-z] 改為 [[:lower:]]
13樓:匿名使用者
case是不是應該在迴圈體的外面?
linux shell程式設計中我遇到個問題是關於 看兩個數能否整除的 我把這段從整個程式中抽出來,希望高手幫我看看
14樓:匿名使用者
[5%3=0] : command not findshell不識別
#!/bin/bash
n=10
x=2if [ `expr $n % $x` = 0 ]then
echo "can"
else
echo "can not"fi
15樓:阿彌陀佛被註冊
1樓正解,稍微解釋下。在bash中if後面的[ ] ,兩端要空格,=在bash中如果是賦值不需要空格,但是判斷相等是要兩邊加空格的,我剛學也碰到這些問題。
所以你的應該是if [ $n%$x = 0 ]
linux shell程式設計指令碼第一行為什麼一定要用"#!/bin/sh",不寫行不行?這個"!"是什麼意思?
16樓:匿名使用者
#!/bin/sh為指定你執行指令碼的shell型別,是bash,ksh還是其它,一般系統有固定的shell,不定這行也能執行,只是為了規範寫上的。還有比如你執行的是perl程式,就可以寫#!
/bin/perl.
17樓:匿名使用者
#! /bin/sh 是指此指令碼使用/bin/sh來解釋執行,#!是特殊的表示符,其後面跟的是解釋此指令碼的shell的路徑
如果沒有宣告,則指令碼將在預設的shell中執行,預設shell是由使用者所在的系統定義為執行shell指令碼的shell.如果指令碼被編寫為在kornshell ksh中執行,而預設執行shell指令碼的為c shell csh,則指令碼在執行過程中很可能失敗。
18樓:使者
表示用來解釋此指令碼的程式是"/bin/sh"
不寫的話應該不會出錯。
但是考慮到移植問題,還是寫上比較好。
19樓:匿名使用者
這個是告訴系統,應該呼叫哪個東西來執行他。
是特殊格式。
C 程式設計問題,C 程式設計問題
include using namespace std void circle void else break while 1 return 0 c 程式設計,出現2 個無法解析的外部命令,怎麼回事?client.h ifndef client define client include inclu...
C 程式設計問題
1.首先 cin a,b,c 沒有這種寫法,編譯的時候可能能通過,但是會有run time error 必須分開寫 cin a cin b cin c 2.if裡面的條件同時滿足用 間隔,後面的內容要用花括號包著,面積要重新定義變數,乘法要寫出來 if a b c a c b b c a else ...
access vba程式設計問題
在窗體上建兩個文字框 一個 text1 用來輸入x,一個 text3 用來輸出y,再建一個按鈕 command0 把 寫到按鈕單擊事件裡去,在text1中輸入一個數字,再單擊按鈕command0,然後在text3中看結果 private sub command0 click dim x,y as s...