簡體   English   中英

在bash中包含和排除globbing模式

[英]Including and excluding globbing patterns in bash

我正在嘗試使用PHP CodeSnifferPHPCompatibility標准來測試一組特定的文件。

我目前正在使用find來執行此操作。

find ./path1 ./path2 ./path3 ./path4                                                \
    -type f                                                                         \
    -name '*.php'                                                                   \
    -not -path './path4/dontwantthis/*'                                             \
    -exec ./vendor/bin/phpcs                                                        \
    --standard=PHPCompatibility --runtime-set testVersion 5.6 {}                    \;

但是,這確實很慢且效率低下,因為腳本的啟動針對每個文件運行。

phpcs腳本采用類似./vendor/bin/phpcs --standard=PHPCompatibility --runtime-set testVersion 5.6 <path-of-your-php-files> ,我想找到一種方法來復制find具有球形模式的東西代替<path-of-your-php-files>

我遇到的主要問題之一是包括./path4/*.php同時還排除了./path4/dontwantthis/*

+而不是\\;結束-exec選項\\; 這告訴find使用所有文件名運行一次命令,而不是針對每個文件名分別運行命令。

find ./path1 ./path2 ./path3 ./path4                                                \
    -type f                                                                         \
    -name '*.php'                                                                   \
    -not -path './path4/dontwantthis/*'                                             \
    -exec ./vendor/bin/phpcs                                                        \
    --standard=PHPCompatibility --runtime-set testVersion 5.6 {} +

暫無
暫無

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

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