2015-12-22 29 views
1

IM與PHP我覆盆子PI的工作,和IM試圖找到一個USB驅動器上的文件,這將是在每分鐘一個cron job ...排序低谷命令行輸出連接的設備

的文件有一個名字,我會知道每一次(settings.txt),我有所需的輸出來找出我有什麼驅動器.. 現在我不知道如何對它們進行排序...

我寫他們所有的文本文件,但他們沒有\ n在每一行上,而不是\ t在他們之間......怎麼可能得到「掛載」的價值?

輸出:

Filesystem  1K-blocks Used Available Use% Mounted on 
/dev/root  3648564 3479396 152784 96%/
devtmpfs   469756  0 469756 0% /dev 
tmpfs    474060  452 473608 1% /dev/shm 
tmpfs    474060 6928 467132 2% /run 
tmpfs    5120  4  5116 1% /run/lock 
tmpfs    474060  0 474060 0% /sys/fs/cgroup 
/dev/mmcblk0p1  65480 20256  45224 31% /boot 
tmpfs    94812  48  94764 1% /run/user/1000 
/dev/sda1  15625744 5330752 10294992 35% /media/kristian/D81C-745F 

設備信息: 操作系統:Ubuntu的伴侶15 ** PHP:5.6

回答

0

我會用awk這一點。它默認按空間分割。對於我的Mac來說,它是9美元,而我的Centos盒子中有一個是6美元。取決於你的價值在哪一列。看起來是6美元。

df | awk '{print $6}'                  

Mounted 
/
/tmp 
/usr/local 
/var 
/dev 
/Volumes/MobileBackups 
/Volumes/AppCode 
/Volumes/LaCie 
0

我想通搜尋小時後,我可以使用此代碼:

<?php 
$df = array(); 
echo "reading `df` command \n"; 
exec("df -T -x tmpfs -x devtmpfs -P -B 1G",$df); 
array_shift($df); 
$Stats = array(); 
foreach($df as $disks){ 
    $split = preg_split('/\s+/', $disks); 
    $Stats[] = array(
     'disk'  => $split[0], 
     'mount'  => $split[6], 
     'type'  => $split[1], 
     'mb_total' => $split[2], 
     'mb_used' => $split[3], 
     'mb_free' => $split[4], 
     'percent' => $split[5], 
    ); 
} 
echo "Completed device scan... \n";