0
我到目前爲止還沒有那麼壞的版本來實現,這是:如何編寫轉換器將PHP文件更改爲Bash文件?
function bashFileConvert($file)
{
return preg_replace('/([^\/\s]+\s+[^\/]+)(\/|$)/','"${1}"${2}',$file);
}
當有文件名的空間,其主要是處理該問題,像
$flie = '/usr/local/my test file.txt'
而不會Bash可識別。
所以我需要調用像之前轉換爲
$file = '/usr/local/"my test file.txt"'
:
exec('ls ' . $file);
但還是有很多其他的角落情況下,如報價和「&」的問題。
那麼,有沒有現成的版本來完成這項工作?
==================================
現在我試圖escapeshellarg(),但這裏有點奇怪:
$file = '/usr/local/apache2/resumes_txt/5/San Francisco/qtzhang/Device "Engineer"/Job Resume Qintao Zhang.pdf.txt';
echo escapeshellarg($file);
D:\\test>php test.php
"/usr/local/apache2/resumes_txt/5/San Francisco/qtzhang/Device Engineer /Job Resume Qintao Zhang.pdf.txt"
看來用這個函數,報價被替換爲空格。
如果有一個「in file本身? – omg 2009-06-04 09:58:52