登錄命令我用各種工具的bash做一些數據分析和每一個現在,然後我輸入類似執行和在bash
>some_command -with -complicated -arguments
我經常立刻跟進
>echo "some_command -with -complicated -arguments" >> mylog.txt
有沒有辦法一次完成這一切?點擊向上箭頭是一種痛苦,加上echo
和引號。
我不想登錄我的整個會話,我應該補充說,因爲會有很多不值得記錄的東西。
登錄命令我用各種工具的bash做一些數據分析和每一個現在,然後我輸入類似執行和在bash
>some_command -with -complicated -arguments
我經常立刻跟進
>echo "some_command -with -complicated -arguments" >> mylog.txt
有沒有辦法一次完成這一切?點擊向上箭頭是一種痛苦,加上echo
和引號。
我不想登錄我的整個會話,我應該補充說,因爲會有很多不值得記錄的東西。
繼文獻指出,由查爾斯·達菲,我結束了加入這個對我的.bashrc:
logit() {
fc -ln -1 | sed '1s/^[[:space:]]*//' >> ${1:-commands.txt}
}
所以logit
本身將在最後一個命令添加到commands.txt
,並且logit myfile
將增加最後的命令爲myfile
。
這將記錄'-foo「bar baz」'與' -foo酒吧baz'。 –
如果您只需要用戶運行命令的語義等同性,請考慮:'verbose(){local cmd_q; printf -v cmd_q'%q'「$ @」; printf'%s \ n'「$ {cmd_q%}」>> mylogfile; 「$ @」; } - 但這只是語義等價,不是確切的文本(也就是說,「詳細的貓」 - 「$(something)」>別處不會記錄重定向*或者*知道它是輸出用於在所述重定向之前形成最後一個參數的'something')。 –
是的,這是一個問題。例如'sed -i「s/Alice/Bob/g」test.txt「被記錄爲'sed -i s/Alice/Bob/g test.txt'。我想要存儲確切的原始命令。 –
查看'history'命令以及.bash_history文件 – CoconutBandit
跨站點複製:http://unix.stackexchange.com/questions/38072/how-can-i-save-the-last-command對一個文件 –
本地非常接近重複(回答其他人使這個問題的答案顯而易見):http://stackoverflow.com/questions/40715729/linux-store-last-command-into-variable –