Что сделать, когда результатом канала не является последний аргумент в следующей команде

Это невозможно: корень может всегда получать доступ ко всем данным. Даже при шифровании его как только Вы дешифруете его для доступа, корень может шпионить на данных и шпионить на Ваших учетных данных также. Вы ничего не можете защитить от локального корня.

Можно хранить файлы на машине, администратора которой Вы не подвергаете коррозии, но необходимо зашифровать и подписать их. Это означает, что Вы только сможете искать их на машине, которой Вы доверяете. Можно сохранить электронную почту и искать индексы на недоверяемой машине, но поиск должен произойти на доверяемой машине. Существует продолжающееся исследование в области форм шифрования, которое могло позволить искать, но это трудно (доступный для поиска, и зашифрованный являются существенно противоречащими) —, не ожидают применимое программное обеспечение в ближайшее время, если когда-либо.

0
23.06.2013, 15:55
1 ответ

В этом случае используйте оболочку для итерации

find . -name "*0.01*txt" | while IFS= read -r filename; do
    newname=$(awk '{split($1,a,"/"), print a[3]"_"a[4]"_"a[5]}' <<< "$filename")"
    cp "$filename" "$newname"
done

В целом xargs полезен:

find .... -print0 | xargs -o -I FILE someCommand arg1 FILE arg3 FILE
3
28.01.2020, 02:28

Теги

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