上傳檔案大多數用的是ftp,但是用ftp有一點不好,就是本地和遠端的目錄要對應,這樣就要在多個目錄下去切換,這樣挺麻煩的,如果不注意的話,很有可能傳錯。所以想了個辦法利用scp來批量上傳檔案或者目錄。
一、scp上傳不要輸入密碼
如果要用scp來上傳檔案,第一步就要去掉scp上傳時要輸入密碼。要不然就沒辦法批量上傳了。具體請參考:ssh 不用輸入密碼
二、ssh批量上傳指令碼
1、要上傳的檔案列表放到乙個test檔案中
root@ubuntu:/home/zhangy# cat test上面就要上傳的檔案。/home/zhangy/test/aaa
/home/zhangy/test/nginx.conf
/home/zhangy/test/test.sql
/home/zhangy/test/pa.txt
/home/zhangy/test/password
2、批量上傳的指令碼
vim file_upload.sh[neiqian]
#!/bin/sh上傳成功後,返回的是乙個空行,上傳不成功,什麼都不返回date=`date +%y_%m_%d_%h`
if [ $1 ]
then
for file in $(sed '/^$/d' $1) //去掉空行
doif [ -f $file ] //普通檔案
then
res=`scp $file $2:$file` //上傳檔案
if [ -z $res ] //上傳成功
then
echo $file >> $_upload.log //上傳成功的日誌
fielif [ -d $file ] //目錄
then
res=`scp -r $file $2:$file`
if [ -z $res ]
then
echo $file >> $_upload.log
fifi
done
else
echo "no file" >> $_error.log
fi
[erji]3、上傳的格式[erji]
./file_upload.sh test 192.168.1.13test是上傳列表檔案,[neiqian]192.168.1.13檔案要傳到的地方。
SSH檔案上傳
4 action處理 接收上傳檔案的臨時檔案流 private file img 上傳檔案的name為img,那麼這個檔案的名稱會自動儲存在img filename屬性裡面 private string imgfilename 上傳檔案的name為img,那麼這個檔案的型別會自動儲存在img con...
使用Git命令批量上傳檔案
git命令是相容linux命令的,當我們想批量上傳檔案的時候,可以考慮在windows的git bash中使用shell指令碼來上傳。步驟如下 先新建乙個.txt檔案,用記事本或者其他工具開啟 這裡使用 im開啟,輸入以下命令 bin bash git add git commit m 1 git ...
使用ssh命令的方法上傳檔案
使用方式如下 1 上傳本地檔案到伺服器 scp path filename username servername path 例如scp var www test.php root 192.168.0.101 var www 把本機 var www 目錄下的test.php檔案上傳到192.168....