переименовать 'y/A-Z/a-z/' * не работает в подсистеме Windows для Linux (wsl)

Возможно, у него есть доступ к вашему файлу cookie X11. Если у вас есть этот файл cookie, вы можете получить доступ к X-серверу и отслеживать все. Обычно файл cookie находится в файле с именем .Xauthorityв вашем домашнем каталоге. Вы можете увидеть это с помощью xauth list. Поэтому проверьте, может ли ваш коллега получить/прочитать ваш файл .Xauthority. Если ваш дом исходит из общего сетевого ресурса, он может иметь доступ к серверу, на котором он находится, и может получить доступ к вашему файлу cookie там.

Или, может быть, вы явно или неявно запустили xhost +. Тогда каждый сможет получить доступ к вашему X-серверу и все контролировать. См. man xhost.

2
26.10.2019, 10:24
1 ответ

Я предполагаю, что это как-то связано с именами файлов, нечувствительными к регистру -, поэтому, если renameпроверяет, существует ли целевой файл, он видит оригинал и останавливается, чтобы не уничтожить его.

Переименование Perl в моей системе имеет эту опцию, которая, похоже, может работать здесь:

-f, -force
           Over write: allow existing files to be over-written.

Даже если это не сработает, у вас должна быть возможность переименовать файлы, а не просто изменить регистр. Например. добавьте xв начало при изменении регистра, а затем удалите этотx:

rename 'y/A-Z/a-z/; s/^/x/' *
rename 's/^x//' *

(, конечно, это не сработает, если у вас есть файлы с именами fooи xfoo, но вы всегда можете изменить префикс на что-то другое.)

1
27.01.2020, 22:16

Теги

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