2016-11-21 16 views
3

我正要將最後一條命令存儲到一個變量中。linux:將最後一條命令存入變量

E.g:

#last command: 
$> cp myfile /to/somewhere 
$> last = #some magical command here 
$> echo $last 
cp myfile /to/somewhere 

我試過!!:p命令幾種方式,但它確實讓我最後的命令,但我不能把它存儲變量。

$> last=`!!:p` 
$> echo $last 
(empty) 

任何幫助?

+2

你爲什麼需要它? – choroba

+2

[什麼是XY問題?](http://meta.stackexchange.com/q/66377) – Cyrus

+0

我需要它編寫一個小腳本,將我的最後一個命令保存爲別名。 –

回答

8

嘗試some_var=$(fc -nl -1)fc命令可用於檢索以前的命令

從成立的評論最好的例子。

+4

用'-l -1'獲得命令可能會更好。 'some_var = $(fc -nl -1)'起作用 – viraptor

2

使用!!:p只打印最後一個命令,執行最後一個命令!!

$ mycmd="$(!!)" 
$ sh "$mycmd" 

這應該做你要找什麼...