ubuntu下幾個方便的指令碼
登入伺服器
#!/usr/bin/expect -f
# 設定ssh連線的使用者名稱
set user name
# 設定ssh連線的host位址
set host ip
# 設定ssh連線的埠號(非必需)
set port number
# 設定ssh連線的超時時間
settimeout 20
set password ****
# 登入,埠號為預設埠號時可以省略
spawn ssh
$user@
$host -p $port
# 期待出現的提示(根據登入時的提示調整)
expect
"*password:"
# 提交密碼
send "$password\r"
# 控制權移交
interact
上傳檔案到伺服器
#!/usr/bin/expect -f
# 設定ssh連線的使用者名稱
set user name
# 設定ssh連線的host位址
set host ip
# 設定ssh連線的埠號(非必需)
set port number
# 設定ssh連線的超時時間
settimeout 20
set password ***
setfile
[lindex $ar** 0]
# 登入,埠號為預設埠號時可以省略
#spawn ssh $user@$host -p $port
spawn scp -r -p 435 $file / [email protected]:/home/limeng/
# 期待出現的提示(根據登入時的提示調整)
expect
"*password:"
# 提交密碼
send "$password\r"
# 控制權移交
interact
用法:
./uplaod.sh 檔案(夾)的絕對路徑
./upload.sh ./yolov5/
./upload.sh ./change.py
#!/usr/bin/expect -f
# 設定ssh連線的使用者名稱
set user name
# 設定ssh連線的host位址
set host ip
# 設定ssh連線的埠號(非必需)
set port number
# 設定ssh連線的超時時間
settimeout 20
set password ***
setfile
[lindex $ar** 0]
# 登入,埠號為預設埠號時可以省略
#spawn ssh $user@$host -p $port
spawn scp -r -p 435 [email protected]:/home/limeng/$file /home/limeng/server/
#/home/limeng/server/ 為目標資料夾
# 期待出現的提示(根據登入時的提示調整)
expect
"*password:"
# 提交密碼
send "$password\r"
# 控制權移交
interact
用法:
./download.sh test/
ubuntu 下 shell指令碼的執行
之前寫過一些簡單的bash指令碼,實現一些簡單的功能,雖然每次寫完之後無法使用 test.sh 來執行,但是使用 sh test.sh 效果也一樣的。今天在使用 sh 來執行指令碼時,出現了錯誤,就引發了我的好奇心,在網上搜了許多部落格,看看到底有什麼不同,以下是我的個人思考與理解 首先,在ubun...
ubuntu下執行mysql指令碼
ubuntu下執行mysql的.sql檔案 方法一 1 執行此命令,會提示輸入mysql的root賬戶的密碼,驗證成功後,會在dbname這個資料庫中執行filename.sql這個指令碼,其中filename.sql檔案是sql檔案所在的路徑。命令 mysql u root p dbname u ...
Ubuntu下執行Shell指令碼
將乙個指令碼儲存為帶有副檔名的檔案,如test.sh,在終端上輸入 chmod x test.sh 然後輸入 test.sh 終端顯示 test.sh 找不到命令 後來看了鳥個私房菜,發現這樣輸入,系統只會在 path上列出的路徑查詢,而不會查詢當前的目錄有沒有這樣的命名,以找到的第乙個為準 但是,...