Используйте grep, чтобы найти содержание в файлах и переместить их, если они соответствуют

Решение без создания Сервиса с помощью $ rootScope:

Чтобы поделиться свойствами в приложениях Controllers, вы можете использовать Angular $ rootScope. Это еще один вариант для обмена данными, поэтому люди знают об этом.

. Предпочтительным способом обмена некоторыми функциями между контроллерами является «Сервисы», чтобы читать или изменять глобальную собственность, вы можете использовать $ rootscope.

var app = angular.module('mymodule',[]);
app.controller('Ctrl1', ['$scope','$rootScope',
  function($scope, $rootScope) {
    $rootScope.showBanner = true;
}]);

app.controller('Ctrl2', ['$scope','$rootScope',
  function($scope, $rootScope) {
    $rootScope.showBanner = false;
}]);

Использование $ rootScope в шаблоне (свойства доступа с $ root):

<div ng-controller="Ctrl1">
    <div class="banner" ng-show="$root.showBanner"> </div>
</div>
52
задан Chris Upchurch 8 April 2009 в 08:11
поделиться

5 ответов

grep -L -Z -r 'Subject: \[SPAM\]' . | xargs -0 -I{} mv {} DIR

вывод средств-Z с нулями (\0) после имен файлов (таким образом, пробелы не используются в качестве разделителей).

xargs -0

средства интерпретируют \0, чтобы быть разделителями.

Тогда

-I{} mv {} DIR

замена средств {} с именами файлов, таким образом, Вы добираетесь mv filenames DIR.

74
ответ дан daveb 7 November 2019 в 09:16
поделиться

Эта альтернатива работает, где xargs не является availabe:

grep -L -r 'Subject: \[SPAM\]' . | while read f; do mv "$f" out; done
19
ответ дан Tobias Kunze 7 November 2019 в 09:16
поделиться

Существует несколько путей, но вот медленный, но отказоустойчивый:

IFS=\n'; # set the field separator to line break
for $mail in $(grep -L -r 'Subject: \[SPAM\]' .); do mv "$mail" your_dir; done;
IFS=' '; # restore FS
1
ответ дан e-satis 7 November 2019 в 09:16
поделиться

Можно передать результат следующей команде при помощи grep... | xargs mv {} место назначения

человек Проверки xargs для большего количества информации

-1
ответ дан Confusion 7 November 2019 в 09:16
поделиться

Это то, что я использую в Fedora Core 12:

grep -l 'Subject: \[SPAM\]' | xargs -I '{}' mv '{}' DIR
6
ответ дан 7 November 2019 в 09:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: