簡體   English   中英

如何在Linux上查找可讀文件夾

[英]How to find readable folders on linux

我試圖使用shell命令在Linux服務器上查找所有可讀目錄和子目錄,我嘗試了以下命令行:

find /home -maxdepth 1 -type d -perm -o=r

但是此命令行僅向我顯示( / )目錄中的可讀文件夾,而沒有子目錄。

我想用php或命令行來做

謝謝

但是此命令行僅向我顯示(/)目錄中的可讀文件夾,而不向我顯示子目錄

設置-maxdepth 1時, -maxdepth 1 find命令限制為/home將其刪除以允許find 遞歸搜索。

find /home -type d -perm -o=r

如果您需要本機php解決方案,則可以使用此glob_recursive函數和is_writable ,即:

<?php
function rglob($pattern, $flags = 0) {
    $files = glob($pattern, $flags);
    foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir) {
        $files = array_merge($files, rglob($dir.'/'.basename($pattern), $flags));
    }
    return $files;
}

$dirs = rglob('/home/*', GLOB_ONLYDIR);
foreach( $dirs as $dir){
    if(is_writable($dir)){
        echo "$dir is writable.\n";
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM