1樓:匿名使用者
[root@localhost ~]# a=""; \> b=""; \
> tmp=""; \
> read x; \
> a=$; \
> b=$; \
> if [ $a > $b ] ; then \> tmp=$a; \
> a=$b; \
> b=$tmp; \
> fi; \
> echo $a $b
34,12
12 34
[root@localhost ~]#
可以看出我是直接把**粘到終端上執行的,所以每一行後都有分號作語句分隔用,然後又用\斷行,其實上面這麼多行,是在同一行內。
每行前的 > 是bash shell自動給出,因為它知道**還沒輸完。你只要把下面這樣的**複製上去也就可以:
a=""; \
b=""; \
tmp=""; \
read x; \
a=$; \
b=$; \
if [ $a > $b ] ; then \tmp=$a; \
a=$b; \
b=$tmp; \
fi; \
echo $a $b
用history命令可以查詢到我確實就相當於輸入在同一行:
1022 a=""; b=""; tmp=""; read x; a=$; b=$; if [ $a > $b ] ; then tmp=$a; a=$b; b=$tmp; fi; echo $a $b
1023 history
[root@localhost ~]#
2樓:匿名使用者
[root@bogon ~]# echo 31 12 12 2 1 2 | xargs -n1 | sort -n | sed ':a;n;s/\n/,/;ba'
1,2,2,12,12,31
3樓:
先將逗號都替換為換行符,然後用 sort 排序(加 -g 選項),最後再把換行符還原為逗號,這樣就將排序後的結果顯示在一行上。
# echo "31,12" | sed 's/,/\n/g' | sort -g | sed ':a;n;s/\n/,/;ba'
12,31
其實一樓的也是排序,而且是著名的氣泡排序演算法,其思想就是不斷地從前往後(或從後往前)兩兩比較和交換(就是你所說的顛倒順序)。
人家是比較大小後才顛倒順序的,不是上來就直接顛倒一下 ^_^
輸入4個數字,要求按從小到大順序輸出
4樓:子爵先生
#include
using namespace std;
求個shell指令碼 使用者輸入一個數字,判斷該數字大於、小於一個數字,如100。等於時退出該迴圈
5樓:匿名使用者
[lotto@logging ~]$ cat test.sh#!/bin/sh
i=0while [ 1 -gt 0 ]
doecho -e "請輸入數字:"
read num
if [ $num -gt 100 ]
then
echo "大於100"
elif [ $num -lt 100 ]then
echo "小於100"
else
echo "等於100,退出程式"
break
fii=`expr $i + 1`
done
[lotto@logging ~]$ ./test.sh請輸入數字:
4小於100
請輸入數字:
105大於100
請輸入數字:
100等於100,退出程式
[lotto@logging ~]$
6樓:小米飛貓
#!/bin/bash
while true;do
read -p "enter an integer:" numif [ $num -eq 100 ];thenbreak
fidone
exit 0
#因為你沒說大於,小於後做什麼,只說了一個等於100時退出。
#那我只能認為不管我輸入什麼數,還是重複輸入,直到我輸入100時退出。
linux中編寫shell指令碼,輸出如下序列:1,3,2,4,3,5,4,6,···100 。[附圖]
7樓:匿名使用者
指令碼至少有如下錯抄誤:
改為$或$j,是要取值的
bai啊
expr語句du外面是反引號(鍵盤上esc下面那個鍵)zhi而不是單引號,表示執行dao命令而不是單純一個字串,expr後面的運算子左右兩側要有空格。
if跟[之間是要有空格的,if判斷表示式比較符兩側也要有空格,數字跟 [ ]之間要有空格。
我修正了,自己執行成功生成你要的數列了。你自己對比下吧:
#!/bin/bash
#script name prg8.sh
clear
i=1for ((j=1;j<=98;j++))doecho -n "$j,`expr $j + 2`,"
if [ $i -eq 10 ]
then
echo ""
i=1else
i=$((i+1))
fidone
echo ""
註釋裡已經說了,script name prg8.sh,指令碼名叫prg8.sh,當然,叫什麼名字是你的自由。
8樓:匿名使用者
孩子指令碼語言是不需要編譯的,sh 12.c就可以了,還有shell指令碼一般以sh為副檔名,不要用c,也可以chmod +x 12.c 加可執行許可權,./12.c來執行
9樓:匿名使用者
你只是想輸出1~100這100個數字??
直接用迴圈就行了啊
**#!/bin/bash
for (( i=1; i<=100 ; i=i+1 ))doecho "$i"
done
————————————————————
看錯題目了,當我沒答
兩個數字的算式集,兩個數字的算式集
共有72個算式 1 2 1 2 1,1 3 1 3 1,1 4 1 4 1,1 5 1 5 1,1 6 1 6 1,1 7 1 7 1,1 8 1 8 1 1 9 1 9 1,2 1 2 1 3,2 3 2 3 5,2 4 2 4 6,2 5 2 5 7,2 6 2 6 8,2 7 2 7 9 2 ...
帶有兩個數字的成語,含有兩個數字的成語大全?
一心一意 一分為 二 不三不四 三心二意 四面八方 四通八達 五光十色 五顏六色 六神無主 七零八落 七上八下 五花八門 半斤八兩 九牛一毛 九死一生 九牛二虎之力 2 十全十美 十萬火急 百花齊放 百家爭鳴 千軍萬馬 千載難逢 萬紫千紅 萬水千山 一目十行 一心一意 一五一十 一刀兩斷 一言為定 ...
你知道這兩個數字是什麼嗎,38這兩個數字什麼含義啊?
應該是0和2吧 假定皇帝給的都是非負整數,因為畢竟古代中國好像沒負數概念的 好像只有這兩個數字才符合啊。本題的關鍵在於 過了幾秒鐘 兩個都異口同聲說 知道這兩個數字是什麼了 我想了下,既然如此,那麼必然其中有一個數字是比較特殊的,比如0之類 它乘以所有的數字,積都是 否則兩個人很難以 對方沒有猜出 ...