Не удалить символьные ссылки, отклоненное разрешение

может также использовать awk: awk 'NR==1 {sub(/./,"")} 1'

2
01.11.2012, 18:31
1 ответ

На самом деле Вы также не используете sudo (по крайней мере, не в смысле Вы думаете): только ls команда выполняется под sudo, затем вывод sudo ls -l . проходит канал. Попробуйте свою строку:

\ls -l . | grep '../Library/Frameworks/Python.framework/Versions/3.2' | awk '{print $9}' | sudo xargs rm

(\ls аннулирует любой псевдоним, для которого Вы можете иметь ls, который может заставить выходной формат изменяться.)

1
27.01.2020, 22:23
  • 1
    Отметьте это ls искажения некоторые специальные символы и xargs ожидает вход, заключенный в кавычки специфическим способом, таким образом, эта команда только работает, если включенные имена файлов не содержат специальных символов. Кроме того, это не работает с именами пользователей, содержащими пробелы, который возможен на OSX IIRC. –  Gilles 'SO- stop being evil' 01.11.2012, 19:41
  • 2
    Лучше не проанализировать ls: Wiki Greg. –  Francesco Turco 02.11.2012, 15:04

Теги

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