2014-11-23 45 views
-1

我想在Linux中啓動GCC文件後,我發現它。我也需要給予自己對這個文件的權利,因爲我不擁有它,之後,我需要將文件移動到我剛剛啓動sh腳本的目錄中。試圖發現後發現一個文件Linux BASH

我正在使用以下命令來查找該文件,並將其更名並在我當前的目錄中重命名它。

find . -name ".*" -exec bash -c 'sudo chown root:root {}' \; -exec 'mv {} /root/customfile' \; 

我的問題是,我如何運行此GCC編譯文件並將其輸出返回到標準輸出?

+0

什麼是「一個gcc文件」? gcc是一個編譯器。你可以用它來編譯一個程序。您是否在問如何在文件上運行編譯器,然後執行生成的可執行文件? – 2014-11-23 16:54:30

+0

是的,確切地說,這就是我所要求的,我可以如何運行它。更確切地說,我正在搜索的文件已經由GCC編譯,我需要做的就是運行它。 – 2014-11-23 16:55:09

+1

'find'命令是非常沒有選擇性的。如果它們存在,它會找到*許多* *許多*文件。 – 2014-11-23 17:35:08

回答

0

由於您將其重命名爲/root/customfile,因此運行它的命令現在爲/root/customfile。或者如果/root/customfile是目錄,則該命令現在是/root/customfile/.whateverthefilenameis

因爲你已經產卵了一個shell,所以你可能需要在一個shell中運行所有的命令。

find . -name ".*" -exec bash -c ' 
    sudo chown root:root {} 
    mv {} /root/customfile 
    /root/customfile/$(basename {})' \; 

如果/root/customfile是文件名,那麼很明顯改變的最後一行。