Невозможно редактировать/перемещать/переносить файлы через SCP на сервер Linux

Рассматривали ли вы со стратегической точки зрения, вместо того чтобы перемещать файлы, оставить текущую структуру на месте и создать ссылки для новой структуры, которую вы хотите?

Тактически схема, которая будет выполнять эту работу, выглядит следующим образом:

find. -mindepth 2 -maxdepth 2 -type d -print0 | xargs -0n1 bash -c \
  'b=$(basename "$(dirname "$1")"); a=$(basename "$1"); echo ln -s "$1" "$b-$a"' {}
  • findнаходит все каталоги ровно на два уровня глубже текущего рабочего каталога, который должен быть каталогом, содержащим группы. :таким образом, на два уровня глубже находятся названия альбомов под названиями групп. 1
  • xargsиспользует каждый путь, содержащий альбом, и вызывает встроенный сценарий bash.
  • bash -c '...'принимает путь к альбому в качестве первого аргумента, разбивая этот путь на две части :группу($b)и альбом($a). Наконец, сценарий собирает имена в нужный формат и связывает новое имя каталога с исходным каталогом.

Обратите внимание, что в этом примере ссылки будут создаваться в том же каталоге, из которого вы начинаете, а также в том же каталоге, где находятся названия групп.

Вы можете -и должны -изменить описанную выше lnстратегию, чтобы она соответствовала вашим намерениям. mvс правильными путями, если вы физически хотите изменить порядок, или ln, если вы хотите создать удобный «представление» на носителе. Важными частями сценария bash являются:

  • $bназвание группы. Всегда цитируйте его:"$b".
  • $aназвание альбома. Всегда цитируйте его :"$a".
  • $1физический путь к каталогу альбома. Всегда цитируйте его :"$1".

1 Я считаю, что m{ax,in}depthподдерживаются GNU и некоторыми BSD find, но не POSIX :, и в этом случае полагайтесь на */*или аналогичную гимнастику оболочки.

1
25.02.2021, 19:20
1 ответ

См.

-rw-r--r-- 1 root root  7224 Sep 19  2017 apache2.conf
    ^^

Корень группы имеет права на чтение файла, но не на его запись, поэтому пользователь ascuserне может редактировать файл.

2
18.03.2021, 22:28

Теги

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