如何把文字導到stdin - Linux

Erin avatar
By Erin
at 2011-03-08T15:11

Table of Contents

sftp 的 man page 提到可以先把 sftp 的指令寫到檔案中

然後用 -b 使 sftp 執行該檔案中的指令

當 -b 後接的檔名為 - 時 表示用 stdin 當做要執行的檔案

$ cat sftp.txt
get .bashrc

$ sftp -b sftp.txt user@host
sftp> get .bashrc
Fetching /root/home/user/.bashrc to .bashrc

$ sftp -b - user@host
get .bashrc => 這行是手打的(stdin)
sftp> get .bashrc
Fetching /root/home/user/.bashrc to .bashrc
exit
sftp> exit

--

我想問的是

如何把 'get .bashrc' 寫在 'sftp -b - ...' 的指令中

而不需準備一個 sftp.txt 或是從 stdin 手動輸入 'get .bashrc'

我猜指令大概長這樣(這是舉例 實際上沒用):

sftp -b - user@host << 'get .bashrc'

(然後弄成alias 之後要呼叫就方便多了)

上網查很久 但實在是找不到做法

希望有人可以教一下 十分感謝~


其實我想過用scp

但 scp 傳一次檔案都要登入 server 一次

傳多少次就要登入多少次server

比起 sftp 來說會花更多時間 (雖然就單次傳檔來說 scp 較快)

我知道可以用 wildcard 或把檔案 tar 起來再傳

但檔名不太規則 wildcard不適用

加上 tar 檔案也是要花不少時間的

所以可以的話還是希望用sftp

wget就不用考慮了 因為檔案不是放在網路空間

--
Tags: Linux

All Comments

Daniel avatar
By Daniel
at 2011-03-12T09:41
echo "get .bashrc" | sftp -b - user@host 可以嗎?
Damian avatar
By Damian
at 2011-03-14T20:42
tar 可以選擇不要壓縮..

請問 Debian 可以裝 Ubuntu Unity 嗎?

Barb Cronin avatar
By Barb Cronin
at 2011-03-08T09:48
※ 引述《IOann (yo-an)》之銘言: : Google 了一下,沒找到相關的資訊, : 請問 Unity 是 Ubuntu only 嗎? : 還是 Debian + Gnome Desktop 也可以自己調出一樣的樣式呢? 試試看 http://askubuntu.com/questions/28 ...

vlc的串流輸出問題

Steve avatar
By Steve
at 2011-03-08T00:43
最近小弟在開始研究在ArchLinux上直播~ 也很順利的在Justin.tv上可以看到順暢的影像了 (灑花 我是先將自己本身的螢幕用vlc串流出去 找了網路上一堆文章再加上自己加加減減後 完成了一道指令 vlc -vvv screen:// :screen-fps=20.0 --sout=an ...

awk 的 bug?

Noah avatar
By Noah
at 2011-03-07T22:50
※ 引述《newlinuxer (新麗仕人)》之銘言: : 我寫了以下的script : #!/bin/bash : str=and#34;aa bb cc .* eeand#34; : result1=`echo $str | awk and#39;{print $4}and#39;` result1=`e ...

awk 的 bug?

David avatar
By David
at 2011-03-07T22:10
我寫了以下的script #!/bin/bash str=and#34;aa bb cc .* eeand#34; result1=`echo $str | awk and#39;{print $4}and#39;` echo $result1 echo and#34;=================== ...

linux上的MSN 對話紀錄

Ethan avatar
By Ethan
at 2011-03-07T21:25
想請問linux上的MSN 是否有對話紀錄的功能呢???? 有像微軟一樣存成xml格式的嗎atat? 並且可以讓windows的MSN能正常讀取 - ...