не удалось выполнить stat для нет такого файла или каталога
Одна строчка bash
Далее идёт изменение расширения файлов и mv для замены:
Но путь к файлу не виден как одно целое, выдаётся сообщение:
и т.д. Как бы без переименования директорий в версию без пробелов решить проблему?
Ему в переменную нужно засунуть.
ls всё равно лишний
Правильный вариант. особенно если файлов очень много (тысячи)
третий вариант, с массивом (обрати внимание на кавычки, они обязательны):
Четвёртый вариант, без массива, потому что он не нужен.
Не знаю, что я мог вставить не так, но все файлы просто. удалились! Хорошо, это копии были. =)
Если вместо mv поставить cp, то всё останется в первозданном виде.
Четвёртый вариант, без массива, потому что он не нужен.
что люди только не придумают, лишь бы не использовать кириллицу и пробелы в названиях!
Это точно. Но при вводе пути к файлу неудобно туда-сюда раскладку менять. )
что люди только не придумают, лишь бы не использовать кириллицу и пробелы в названиях!
Не знаю, что я мог вставить не так, но все файлы просто. удалились!
Поэтому первоначальный вариант должен содержать что-то типа
mv не удаляет файлы, он их может только перезаписывать, поэтому, в подобных скриптах, где одни фалы не должны записываться под именем уже существующих, лучше указывать ″mv″ опцию ″-i″ или ″-n″.
Они мереместились в текущий каталог, откуда запускалдся скрипт сорри, я забыл что basename ест пути
открой для себя двойные кавычки.
мал ты ещё для правильных вариантов.
Не претендуя на правильность дам свой вариант:
а ты поняшка, не умеешь двойные кавычки, вот они у тебя и не работают.
mv не удаляет файлы, он их может только перезаписывать
ЗЫЖ зачем людей путаешь?
Это не ко мне, это к разработчикам ″mv″, у них в докуменации фигурирует термин ″overwrite″.
А использовать опцию ″—backup″ в скриптах, подобных написанному ТС’ом, хуже, чем ″-i″. В случае типовой ошибки, когда все файлы перемещаются под одно имя, ″—interactive″ выдаст предупреждение уже на втором файле и можно ″Ctrl+C″ и искать ошибку.
твой правильный вариант сломается, если в названии файла появится ‘\n’
Это не ко мне, это к разработчикам ″mv″, у них в докуменации фигурирует термин ″overwrite″.
А использовать опцию ″—backup″ в скриптах, подобных написанному ТС’ом, хуже, чем ″-i″. В случае типовой ошибки, когда все файлы перемещаются под одно имя
man страница у разных версий coreutils разная, но вот вывод самой команды mv, вроде, давно неизменный:
Я отвечал на фразу «файлы просто. удалились!» и своим ответом хотел сообщить ТС’у, что ″mv″, в отличии от ″rm″, просто так не удаляет файлы, он может под именем существующего файла записать другой файл и это поведение настраивается. Не знаю, может ″overwritе″ нужно переводить другим словом, но меня и «перезаписывает» устраивает.
ну там только эффект как при перезаписи. На самом деле файл не перезаписывается, а создаётся новый. А вот подтверждение даётся именно в том случае, если эффект операции равносилен перезаписи файлов.
Да только толку от этой опции никакого, если оно для многих файлов. Проще взять mc или ФМ какой-нить. Консоль она для интерактива не предназначена.
Я всё к тому говорил, что в CLI проще постфактум обрабатывать особые случаи. Или предварительно. Но никак не интерактивно.
А в скрипте, который тут ТС писал надо rename юзать, а не mv.
Копирование содержимого одного каталога в другой
если в /p/a/t/h/ лежат только скрытые файлы и папки.
Пишет: cp: не удалось выполнить stat для ‘/p/a/t/h/*’: Нет такого файла или каталога
Нужно СОДЕРЖИМОЕ ОДНОГО КАТАЛОГА скопировать в другой.
В инете нашёл способ с добавлением точки.
Работает, но я его не понимаю. Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано.
Как это всё-таки правильно делать?
YuraRimskiy
Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано
все файлы кроме скрытых копируются из каталога 1 в каталог 2
копируются только скрытые файлы из каталога 1 в каталог 2
копируются все файлы (скрытые и не скрытые)
YuraRimskiy
Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано.
там работает не документация а логика )
Текущий и родитель не попадают, только файлы и папки, в т.ч. скрытые. Не знаю, насколько феншуен вариант в целом, но пользовался много раз и без проблем.
cp –recursive –verbose 1/ <*,.*>2
cp –recursive –verbose 1/. 2
эквивалентны (относительно результата) хотя и работают немного по разному
и раз они делают то что от них ожидается то и «правильными» будут они оба )
Копирование содержимого одного каталога в другой
если в /p/a/t/h/ лежат только скрытые файлы и папки.
Пишет: cp: не удалось выполнить stat для ‘/p/a/t/h/*’: Нет такого файла или каталога
Нужно СОДЕРЖИМОЕ ОДНОГО КАТАЛОГА скопировать в другой.
В инете нашёл способ с добавлением точки.
Работает, но я его не понимаю. Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано.
Как это всё-таки правильно делать?
YuraRimskiy
Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано
все файлы кроме скрытых копируются из каталога 1 в каталог 2
копируются только скрытые файлы из каталога 1 в каталог 2
копируются все файлы (скрытые и не скрытые)
YuraRimskiy
Он какой-то недокументированный. Ни в хелпе, ни в мане про это ничего не сказано.
там работает не документация а логика )
Текущий и родитель не попадают, только файлы и папки, в т.ч. скрытые. Не знаю, насколько феншуен вариант в целом, но пользовался много раз и без проблем.
cp –recursive –verbose 1/ <*,.*>2
cp –recursive –verbose 1/. 2
эквивалентны (относительно результата) хотя и работают немного по разному
и раз они делают то что от них ожидается то и «правильными» будут они оба )
Не удалось установить stat / etc / sudoers: нет такого файла или каталога
Эти ошибки происходят из-за того, что эти файлы принадлежат к специальной файловой системе procfs (установленной в /proc). Файловая система proc представляет информацию о процессах в иерархической файловой структуре, поэтому в тот момент, когда find пытается получить доступ к этим специальным файлам, они больше не присутствуют.
-xdev Не спускайте каталоги на другие файловые системы.
4 ответа
Ярлык:
dpkg-reconfigure: Если что-то не так с разрешением файла /etc/sudoers, с правами доступа root: dpkg-reconfigure sudo. что-то вроде pkexec dpkg-reconfigure sudo должно выполнять работу.
dpkg-reconfigure: Если dpkg-reconfigure не работает для вас, просто запустите pkexec visudo, файл sudoers будет открыт в редакторе, а затем просто сохраните и закройте файл, visudo установит для вас разрешение.
В конце концов, если вы изменили права доступа к каталогу sudoers.d, запустите:
Если файлы есть, и их разрешения так же, как и должно быть, но вы все равно получите это сообщение об ошибке, единственная возможность, которая приходит мне в голову, состоит в том, что вы нарушили другие разрешения, а sudo не имеет доступа к /etc/sudoers.
Мы закончили, однако, если вам нужна подробная инструкция для восстановления сломанных или удаленных sudoers файл с испорченными разрешениями, мы будем использовать другой способ исправить ситуацию.
Введение
Я испортил файл /etc/sudoers, чтобы получите аналогичную ошибку, как и вы.
Что я сделал, чтобы исправить эту проблему:
Прежде чем идти дальше, я должен упомянуть, что вы всегда можете использовать живой диск, чтобы сделать chroot в вашей системе, есть много инструкций о chroot, используя live диск, поэтому я не собираюсь снова давать все эти инструкции, вместо этого я предполагаю, что у нас нет живого диска, и мы будем использовать то, что у нас уже есть, чтобы исправить эту проблему. Если вы довольны cheroot, идите так, это тоже будет работать.
Получение доступа root
Теперь вы попадете в оболочку bash с корневым доступом. сначала перемонтируйте файловую систему с доступом для записи:
Затем откройте пользователя root и установите для него пароль:
Теперь, если ваш /etc/sudoers все еще существует /etc, переместите его в другое место:
Поскольку мы собираемся сообщить нашему менеджеру пакетов, что этот файл отсутствует, и он заменит его на правильную, поэтому он должен «Нет».
Вернуть sudoers назад
Мы просто должны переустановить пакет sudo, однако переустановка не возвращает этот файл, мы должны сказать dpkg для исправления отсутствующих файлов конфигурации, например:
Помните, что он попросит вас установить файл /etc/sudoers, вставив y, скажите «да».
Если это не сработало для вас, выполните следующие действия как root:
Теперь может быть несколько разных прав, запустите dpkg-reconfigure sudo, чтобы исправить это. если он не работает, запустите visudo как пользователь root, файл sudoers будет открыт в редакторе, а затем просто сохраните и закройте файл, visudo установит вам разрешение.
[d40 ] Если все пойдет правильно, ваш файл sudoers вернется, и вы сможете использовать sudo, как раньше.
в dpkg-перенастроить: если только что-то не так с разрешения файл [F8] и с корневой доступ: dpkg-reconfigure sudo. что-то вроде pkexec dpkg-reconfigure sudo должно сделать работу.
в dpkg-перенастроить: если на [F11] не работает для вас, то просто запустите pkexec visudo, меню [fайл от f13] будет открыт в редакторе, то просто сохраните и закройте файл, visudo будет исправить разрешение для вас.
в конце концов, если вы слишком изменилась sudoers.d директорию, запустите:
pkexec chmod 755 /etc/sudoers.d
если файлы есть, и их разрешения, как это должно быть но вы все еще получаете это сообщение об ошибке, единственная возможность, которая приходит мне в голову, это то, что вы нарушили другие права и sudo нет доступа [f17 в]. наиболее вероятным предполагаю разрешения /etc/.
pkexec chmod 755 /etc
мы, однако, если вы хотите подробную инструкцию для восстановления поврежденных или удаленных файлов [зг19] с перепутались разрешения следовать вместе, мы будем использовать другой способ, чтобы исправить положение.
Введение
я изменил мой файл [20 фунтов], чтобы получить подобную ошибку, как вы. Я получаю очень близко, так что я полностью удалить шахте, и это стало точно как у вас.
что я делал для устранения проблемы:
корень Мой аккаунт был заблокирован, и это не было пароля, так что это было невозможно для меня, чтобы делать то, что я хотел сделать. однако, если ваша корневая учетная запись активна и имеет пароль, переключитесь на пользователя root с [клавиши f21] и пропустить эту часть. если нет, следуйте инструкциям.
прежде чем идти дальше, я должен отметить, что Вы всегда можете использовать текущий диск сделать chroot в вашей системе, есть много Инструкции о окружения через живой диск, так что я не буду заморачиваться с дачей все эти инструкции снова, а я буду считать, что у нас нет видео диск, и мы собираемся использовать то, что у нас уже есть, чтобы исправить эту проблему. Если вы счастливы с cheroot идти по этому пути, что тоже работа.
[dиода d17]получение root доступа[!dиода d17] перезагрузить систему, когда жратва появится нажмите e, чтобы отредактировать его в конце строки, которая начинается с Linux, добавить init=/bin/bash нажмите Ctrl+х
теперь вы попадете в оболочку bash с правами суперпользователя. первая файловая система монтирования с доступом на запись:
после разблокировки root пользователя и установить пароль на него:
теперь, если ваш [f25 привод датчика] существует /etc, переместите его в другое место:
mv /etc/sudoers /etc/sudoers.broken
, потому что мы собираемся рассказать нашим менеджером пакетов, что этот файл отсутствует, и оно придет ему на смену к нам с правильным, поэтому он не должен быть там.
принесет пользователям использовать sudo? обратно
мы просто должны переустановить пакет sudo, однако переустановка не принесешь его назад, мы должны сказать [f30 с], чтобы исправить слишком недостающие файлы конфигурации, вроде этого:
помните, что он просит Вас об установке файл /etc/sudoers, вставив [f32 из] сказать «да».
если это не работает для вас, выполните следующие действия как root:
теперь там могут быть некоторые отличается от разрешения, выполнять dpkg-reconfigure sudo, чтобы исправить это. если это не работает, запустите visudo в качестве корневого пользователя, меню [fайл ф35] будет открыт в редакторе, то просто сохраните и закройте файл, [f36 в] будет исправить разрешение для вас.
[и D40]если все идет правильно, ваша файлами sudoers вернется и вы сможете использовать sudo, как вы были раньше.[!и D40]
mv: невозможно stat ‘Pencil.desktop’: нет такого файла или каталога
Я пытался установить Pencil Project на Ubuntu-18.04 для разработки пользовательских интерфейсов раньше реализуя это. У меня возникла следующая проблема с установкой, и я не знаю, почему. После скачивания я только
2 ответа
Это здорово, позвольте мне рассказать вам, что я думаю, что происходит
Вы установили 3.1.0.ga и теперь переустанавливаете (переустановить пакеты должно быть нормально)
Он пытается удалить его самостоятельно с первой установки. (При первой установке эти файлы сюда не помещались, поэтому они не могут быть найдены при удалении)
Итак, давайте посмотрим на скрипт, который не может правильно перемещать файлы. Он называется postinst и представляет собой сценарий оболочки.
Два mv (перемещение файлов), которые не работают, и chmod (изменение разрешений) явно присутствуют.
Владельцы этого проекта знают о некоторых проблемах с установщиком (https://github.com/ evolus / Pencil / issues / 520), и это может быть не самый стабильный инструмент для работы, если вы новичок в программировании / Linux.
Если вы настроены использовать это программное обеспечение, похоже, что другие пользователи создают из исходных файлов. (это обычно более подвержено ошибкам, но очень стандартно для разработчиков программного обеспечения). Дайте нам знать, если у вас возникнут дополнительные вопросы или вы планируете строить из исходников.
У меня была такая же проблема с той же версией. Когда я пытался установить с помощью:
Это то, что я сделал, и это сработало
- кто такой фтизиатр врач взрослый и что он лечит
- Что означает plug in hybrid