linuxshell輸入腳本
A. 怎麼在linux shell 里自動輸入一個數字,比如2,然後自動執行一個回車
可以設置read命令計數輸入的字元。當輸入的字元數目達到預定數目時,自動退出,並將輸入的數據賦值給變數。
#!/bin/bash
read -n1 -p "Do you want to continue [Y/N]?" answer
case $answer in
Y | y)
echo "fine ,continue";;
N | n)
echo "ok,good bye";;
*)
echo "error choice";;
esac
exit 0
該例子使用了-n選項,後接數值1,指示read命令只要接受到一個字元就退出。只要按下一個字元進行回答,read命令立即接受輸入並將其傳給變數。無需按回車鍵。
B. Linux Shell中如何自動輸入命令需要接受的鍵盤輸入
傳遞互動式參數的話,你可以試試這種,比如創建分區的一個例子:
echo"p主分區
1第一分區
指定默認從1開始
+200M分區200M
t更改分區類型
若只有一個則不需要指定分區
8elvm分區
w"|fdisk/dev/sdb
C. linux下shell編寫腳本那個能模擬鍵盤輸入的命令
用 yes 命令
如 yes 123 可以不停的輸出 123,你可以用 yes 123 | head -3 輸出三次。
然後你要是要對某個程序做輸入,你用輸入重定向。
如果你說的是應答,那就用 expect,具體的用法就復雜了,自己搜教程系統地學習吧。
D. 在Linux shell腳本中,如何實現輸入yes執行一段指令,輸入no則執行另外一段指令
您好!可以利用Shell函數實現
#!/bin/bash
action1()
{
#指令
}
action2()
{
#另外一個指令
}
read-p"請輸入您的選擇:"choose
if[$choose="yes"]
then
action1
fi
if[$choose="no"]
then
action2
fi
E. 如何在linux下shell編寫腳本中模擬鍵盤輸入
用 yes 命令
如 yes 123 可以不停的輸出 123,你可以用 yes 123 | head -3 輸出三次。
然後你要是要對某個程序做輸入,你用輸入重定向。
如果你說的是應答,那就用 expect,具體的用法就復雜了,自己搜教程系統地學習吧。
F. linux shell腳本讀取用戶輸入的參數
$# 是傳給腳本的參數個數
$0 是腳本本身的名字
$1是傳遞給該shell腳本的第一個參數
$2是傳遞給該shell腳本的第二個參數
$@ 是傳給腳本的所有參數的列表
例如:
#!/bin/sh
echo "arg_num: $#"
echo "shell_name: $0"
echo "first_arg : $1"
echo "second_arg : $2"
echo "args : $@"
G. linux下shell腳本執行過程中重新輸入命令
其實可以寫成一個腳本
function 就好
也可以直接調用
比如說我有2個文件
abcd.sh
#!/bin/bash
echo $1
test.sh
echo pls input something
read input
clear
abcd.sh $input
現在我執行test.sh
$ test.sh
pls input something
zzzzzzzzzzz
結果是
zzzzzzzzzzz
這就是簡單的調用
你可以傳遞參數就好
如果你有多個需要輸入的就很麻煩。。。
寫成方法會更好些
H. linux如何在終端里輸入shell腳本
一般以#!/bin/sh開頭(不是必須要寫,但一定要單獨一行),指定執行這個腳本的shell程序(也可以用#!/bin/zsh或其他),然後就是堆命令了。
Linux的shell腳本支持很多功能,加上Linux高度模塊化的命令,完全可以用shell腳本寫出復雜的程序。
以上只是簡單介紹如何開始寫shell腳本,如果要寫復雜的腳本,還需要深入學習相關知識(如if——fi、case——esac等結構)。
當然,還需要給腳本加上可執行許可權(chmod +x ./file.sh),否則可以用sh ./file.sh方式執行腳本(這里的sh是執行腳本所需shell,命令也可以是zsh ./file.sh或其他)。
整個shell腳本,其實就相當於你在終端輸入的一系列命令,如果想在shell里做什麼,就先想想在終端可以做什麼吧,字元的的連接,就是直接用 "" 雙引號,輸出,變數定義無 $ 符號,但是使用時一定要加上 $ 符號。
"=" 賦值符號,兩邊一定不能有空格,這和其他語言有區別,尤其是你還有自己代碼美觀風格時特別注意,否則會報語法錯誤!
for 中的數組內容是以 " " 空格分隔,而非 "," 逗號分格。
條件判斷 [ true ] 中括弧 後面需要有一個空格,但是兩個中括弧之間不能有空格如 [[ true ]]。
while 條件判斷可以用 () 括弧,也可以用 [[ ]] 中括弧。
如果用windows寫shell,一定要注意換行符格式 而非 , 需要藉助一些編輯器(如notepad++)更改換行符格式!