Linux delete folder


Задача "Удаление файлов" - Azure Pipelines

  • Статья
  • Чтение занимает 3 мин
Были ли сведения на этой странице полезными?

Оцените свои впечатления

Да Нет

Хотите оставить дополнительный отзыв?

Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку "Отправить", вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.

Отправить

В этой статье

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015,3

Эта задача предназначена для удаления файлов или папок из рабочего каталога агента.

Требования

Нет

Фрагмент кода YAML

# Delete files # Delete folders, or files matching a pattern - task: DeleteFiles@1 inputs: #SourceFolder: # Optional #Contents: 'myFileShare' #RemoveSourceFolder: # Optional 

Аргументы

Аргумент Описание
SourceFolder
Исходная папка
Используемых Папка, содержащая удаляемые файлы. Если оставить его пустым, удаление выполняется из корневой папки репозитория (то же, что и при указании $ (Build. SourcesDirectory)).
Если сборка создает артефакты за пределами исходного каталога, укажите $(Agent.BuildDirectory) для удаления файлов из рабочего каталога агента сборки.
Contents
Содержимое
Необходимости Пути к файлам и папкам для удаления. Поддерживает несколько строк шаблонов minimatch; Каждый из них обрабатывается до перехода на следующую строку. Дополнительные сведения.
Например:
  • **/* Удаляет все файлы и папки в корневой папке.
  • temp Удаляет temp папку в корневой папке.
  • temp* Удаляет все файлы или папки из корневой папки с именем, начинающимся с temp*.
  • **/temp/* Удаляет все файлы и папки во всех вложенных папках с именем **/temp/*.
  • **/temp* Удаляет все файлы или папки с именем, начинающимся с **/temp*.
  • !(*.vsix) Удаляет все файлы в корневой папке, у которых нет расширения !(*.vsix) .
RemoveSourceFolder
Удалить SourceFolder
Используемых Попытка удалить исходную папку после попытки удаления Contents .
Значение по умолчанию: false.
Если необходимо удалить всю папку, установите для этого свойства значение true и задайте Contents для значение * .

Продвинутый уровень

RemoveDotFiles
Удалить Дотфилес
Используемых Удаление файлов, начинающихся с точки (. git,. dockerfile). Пропускает эти файлы, если они не указаны явно (например, "/. *"). Дополнительные сведения.
Значение по умолчанию: false.

Примеры

Удаление нескольких шаблонов

В этом примере будут удалены some/file все файлы, начинающиеся с test , и все файлы во всех подкаталогах, которые называются bin .

steps: - task: DeleteFiles@1 displayName: 'Remove unneeded files' inputs: contents: | some/file test* **/bin/* 

Удалить все подкаталоги, кроме одного

Этот пример будет удален some/one , some/threesome/four но останется some/two .

steps: - task: DeleteFiles@1 displayName: 'Remove unneeded files' inputs: contents: | some/!(two) 

Удалить с помощью расширения фигурных скобок

Этот пример будет удален some/one , some/four но будет оставлен some/two и some/three .

steps: - task: DeleteFiles@1 displayName: 'Remove unneeded files' inputs: contents: | some/{one,four} 

Удаление файлов, начинающихся с точки

В этом примере будут удалены все .txt файлы. Файлы, начинающиеся с точки, также будут удалены.

steps: - task: DeleteFiles@1 displayName: 'Remove unneeded files' inputs: contents: | /some/*.txt removeDotFiles: true 

Открытый код

Эта задача является открытым исходным кодом на GitHub. Отзывы и вклады приветствуются.

Вопросы и ответы

Вопрос. что такое шаблон minimatch? Как это работает?

Ответ. см.:

Вопрос. возникли проблемы при публикации артефактов. Как просмотреть подробные журналы?

Чтобы включить подробные журналы для конвейера, выполните следующие действия.

  1. Изменение конвейера и выбор переменных
  2. Добавить новую переменную с именем System.Debug и значением true
  3. Сохранить
Вопрос. какие переменные доступны мне?

Ответ. $(Build.SourcesDirectory) и $(Agent.BuildDirectory) — всего лишь несколько переменных, которые можно использовать в конвейере. Переменные доступны в виде выражений или скриптов.

Сведения о различных типах переменных см. в разделе Определение переменных, предопределенных переменныхи классических переменных выпусков и артефактов .

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

Ответ. задания развертывания не имеют контекста исходных ветвей и поэтому не подходят для публикации артефактов. Они в основном разрабатывались для использования артефактов. Для решения этой проблемы можно изолировать эту логику в отдельном задании (с зависимостями от заданий развертывания).

Нужен ли мне агент?

Для выполнения сборки или выпуска необходим по меньшей мере один агент.

У меня возникли проблемы. Как их устранить?

См. раздел Устранение неполадок со сборками и выпусками.

Мне не удается выбрать пул агентов по умолчанию, и я не могу поставить сборку или выпуск в очередь. Как устранить эту проблему?

См. Пулы агентов.

Задача отправки NuGet завершается со следующей ошибкой: "Ошибка: не удается получить сертификат локального издателя". Как это исправить?

Это можно исправить, добавив доверенный корневой сертификат. Можно либо добавить переменную среды NODE_EXTRA_CA_CERTS=file в агент сборки либо добавить переменную задачи NODE.EXTRA.CA.CERTS=file в конвейер. Дополнительные сведения об этой переменной см. в документации по Node.js. Инструкции по настройке переменной в конвейере см. в разделе Настройка переменных в конвейере.

git rm | Atlassian Git Tutorial

В начале использования Git часто возникает вопрос: «Как заставить Git больше не отслеживать какой-либо файл или несколько файлов?» Чтобы удалить файлы из репозитория Git, можно воспользоваться командой git rm. Ее действие противоположно действию команды git add.

Обзор команды git rm

Команда git rm позволяет удалять отдельные файлы или группы файлов. Основное назначение git rm — удаление отслеживаемых файлов из раздела проиндексированных файлов Git. Кроме того, с помощью git rm можно удалить файлы одновременно из раздела проиндексированных файлов и рабочего каталога. Удалить с ее помощью файл только из рабочего каталога нельзя. Файлы, в отношении которых выполняется команда, должны быть идентичны файлам в текущем указателе HEAD. В случае расхождений между версией файла из указателя HEAD и версией из раздела проиндексированных файлов или рабочего дерева Git заблокирует удаление. Такая блокировка является механизмом безопасности, который предотвращает удаление изменений в процессе их внесения.

Обратите внимание, что git rm не удаляет ветки. Подробнее об использовании веток Git см. здесь.

Использование

Указывает файлы, подлежащие удалению. Можно указать один файл, несколько файлов через пробел (file1 file2 file3) или шаблон подстановки (~./directory/*).

Параметр -f применяется для отключения проверки безопасности, с помощью которой Git обеспечивает соответствие файлов в указателе HEAD текущему содержимому раздела проиндексированных файлов и рабочего каталога.

Параметр dry run является защитным механизмом. Он позволяет выполнить пробный запуск команды git rm без удаления файлов. В выходных данных отображаются файлы, которые должны были быть удалены.

Параметр -r — это сокращение от слова recursive. При выполнении команды git rm в рекурсивном режиме она удаляет не только каталог назначения, но и все содержимое его вложенных каталогов.

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

Параметр cached указывает, что должны быть удалены только файлы, находящиеся в разделе проиндексированных файлов. Файлы в рабочем каталоге при этом остаются нетронутыми.

Этот параметр заставляет команду завершиться со статусом sigterm, равным 0, даже если файлы, указанные для удаления, не найдены. Sigterm — это код состояния в Unix. Код 0 указывает на успешный вызов команды. Параметр --ignore-unmatch может быть полезен, если команда git rm используется в составе скрипта оболочки, который должен обеспечивать корректную обработку отказа.

Параметр quiet скрывает вывод команды git rm. Как правило, команда выводит по одной строке на каждый удаленный файл.

Отмена изменений, внесенных командой git rm

Изменения, вносимые при выполнении команды git rm, не являются окончательными. Эта команда обновляет раздел проиндексированных файлов и рабочий каталог. Изменения не сохранятся, пока не будет создан новый коммит и они не будут добавлены в историю коммитов. Так что изменения, внесенные командой git rm, можно «отменить» с помощью стандартных команд Git.

Команда git reset восстановит раздел индексированных файлов и рабочий каталог до коммита HEAD. В результате изменения, внесенные командой git rm, будут отменены.

Такого же результата можно добиться с помощью команды git checkout: она восстановит последнюю версию файла из указателя HEAD.

Если после выполнения git rm был создан новый коммит, из-за которого удаление сохранилось, можно воспользоваться командой git reflog, чтобы найти ссылку, предшествующую выполнению git rm. Подробнее об использовании git reflog см. здесь.

Пояснения

Аргумент , переданный команде, может содержать точные пути, шаблоны поиска файлов или точные имена каталогов. При выполнении команды удаляются только пути, зафиксированные в репозитории Git посредством коммитов.

В шаблонах поиска файлов можно задавать имена каталогов. При использовании шаблонов поиска следует быть внимательным. Рассмотрим примеры: directory/* и directory*. Использование первого шаблона приведет к удалению всех файлов в каталоге directory/, тогда как второй вызовет удаление всех каталогов, имя которых начинается на directory — например, directory1, directory2, directory_whatever и т. д., что может быть нежелательным.

Область действия команды git rm

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

Почему следует использовать git rm, а не rm

Репозиторий Git обнаруживает выполнение стандартной команды оболочки rm для отслеживаемого им файла и соответствующим образом обновляет рабочий каталог. Но раздел проиндексированных файлов не обновляется. Чтобы внести в него изменения, для удаленных путей к файлам необходимо дополнительно выполнить команду git add. Команда git rm уменьшает количество действий, поскольку обновляет при удалении и рабочий каталог, и раздел проиндексированных файлов.

Примеры

git rm Documentation/\*.txt

В данном примере шаблон поиска файлов используется для удаления всех файлов *.txt в каталоге Documentation и всех его подкаталогах.

Обратите внимание, что символ звездочки * здесь экранируется символами косой черты. Это сделано, чтобы оболочка не расширяла шаблон. В таком варианте он включает только пути к файлам и подкаталогам, находящимся в каталоге Documentation/.

В этом примере команда выполняется с параметром force для всех файлов, соответствующих шаблону подстановки git-*.sh . Параметр force явным образом удаляет целевые файлы из рабочего каталога и раздела проиндексированных файлов.

Удаление файлов, которых уже нет в файловой системе

В разделе «Почему следует использовать git rm, а не rm» говорилось о том, что команда git rm предусмотрена для удобства: она сочетает функции стандартной команды оболочки rm и команды git add, позволяя удалить файл из рабочего каталога и раздела проиндексированных файлов. Если удалить несколько файлов с помощью стандартной команды оболочки rm, состояние репозитория может стать проблематичным.

Если требуется записать все явным образом удаленные файлы в следующий коммит, можно выполнить команду git commit -a. Она внесет все события удаления в раздел проиндексированных файлов для подготовки к следующему коммиту.

Если же стоит задача безвозвратно удалить файлы, удаленные с помощью команды оболочки rm, нужно воспользоваться следующей командой:

git diff --name-only --diff-filter=D -z | xargs -0 git rm --cached

Эта команда создаст список удаленных файлов из рабочего каталога и передаст его команде git rm --cached, которая обновит раздел проиндексированных файлов.

Команда git rm: заключение

Команда git rm выполняет действия над двумя главными деревьями управления внутренним состоянием Git: рабочим каталогом и разделом проиндексированных файлов. Команда git rm позволяет удалять файлы из репозитория Git. Это удобный инструмент, объединяющий функции стандартной команды оболочки rm и команды git add: сначала git rm удаляет целевой объект из файловой системы, а затем добавляет событие удаления в раздел проиндексированных файлов. Эта команда — одна из многих, которые можно использовать для отмены изменений в Git.

git rm и git mv

Еще один важный практический вопрос при работе с Git - это операции с файлами.

В частности, это операции удаления и переименования файлов. В системе Git имеются специальные команды, которые очень похожи на консольные команды и в Linux/Mac OS. Но для Git они выглядят несколько иначе: - для удаления файлов и - для переименования файлов. Ниже я рассмотрю обе эти комадны более подробно.

Команда git rm

Для удаления файлов в системе Git, как уже упоминалось выше, имеется специальная команда . Ее отличие от обычной консольной команды (в том же Linux) заключается в особенности самой системы Git.

Как хорошо известно, в системе Git файл может одновременно существовать в трех ипостасях: в области “Working Directory”, в области “Staging Area”, в области “Repository”. Удаление файла из области “Working Directory” не приведет к его удалению из областей “Staging Area” и “Repository”.

Поэтому, чтобы удалить файл, нужно (в идеале) выполнить три команды подряд для удаления файла из Рабочей области “Working Directory”, затем из области индекса “Staging Area” и потом из области репозитория “Repository”:

$ rm index.html $ git add . $ git commit -m 'Delete file index.html'

Команда является ни чем иным, как “вшитым” в Git сокращением двух первых команд:

$ rm index.html $ git add .

Сделано это всего лишь для удобства пользования системой Git. Давайте на примере посмотрим работу команды . Предположим, что имеется файл , который проиндексирован и зафиксирован.

Удалим его командой :

Видим, что файл был сразу удален из двух областей: рабочего каталога “Working Directory” и области индексации “Staging Area”. Но в репозитории файл все же остался, о чем говорит вывод команды .

Любой последующий commit зафиксирует удаление этого файла:

Команда git rm -cached

У команды имеется пара полезных ключей, одним из которых является ключ . Задача этого ключа - позволить команде удалить файл из области индексирования “Staging Area”, но при этом оставить его в области рабочего проекта “Working Directory”. Давайте рассмотрим пример, когда создан файл и произведена его индексация (но не фиксация):

Удалим его командой :

Отлично! Видим, что произошло удаление файла . Кроме того, команда показывает, что в рабочей области “Working Directory” имеется неотслеживаемый (untracked) файл по имени .

Команда git rm -f

В предыдущем разделе я рассмотрел вариант, когда созданный и проиндексированный файл удаляется из области индексирования “Staging Area”, но остается в области “Working Directory”. Выполняется это с помощью команды .

Логическим продолжением этой команды является та же самая команда , но с ключом - . Такая команда удаляет проиндексированный (но еще не зафиксированный) файл как из области “Staging Area”, так и из области “Working Directory”.

Давайте рассмотрим на примере созданного и проиндексированного файла его удаление с помощью команды :

Файл удален как из области “Staging Area”, так и из области “Working Directory”. В итоге можно сказать, что между командой и командой практически нет никакой разницы.

Команда git mv - перемещение или переименование файлов

В системе Git имеется “своя” команда для перемещения или переименования файлов. Слово “своя” здесь не даром взято в кавычки - аналогия с командой полная. Команда перемещает или переименовывает файлы, автоматически “уведомляя” об этих событиях область “Staging Area”:

Остается только зафиксировать эти изменения любым коммитом:

$ git commit -m 'Move index.html to papka' [master 868d428] Move index.html to papka 1 file changed, 0 insertions(+), 0 deletions(-) rename index.html => papka/index.html (100%)

Переименуем файл с помощью команды :

Вот и все несложные операции по перемещению\переименованию или удалению файлов с помощью команд и , под всевидящим оком Git.


git

Инструкция по работе с групповыми политиками Active Directory

В статье описана краткая информация о групповых политиках Active Directory и пример управления групповыми политиками на Windows Server.

Что такое групповые политики и зачем они нужны?

Групповая политика - это инструмент, доступный для администраторов, работающих с архитектурой Active Directory. Он позволяет централизованно управлять настройками на клиентских компьютерах и серверах, подключенных к домену, а также обеспечивает простой способ распространения программного обеспечения.

Групповые политики позволяют настраивать параметры для определенного набора пользователей или компьютеров внутри домена Active Directory. Также позволяют указать политики в одном месте для группы и применить к целевому набору пользователей.

Например, можно обеспечить применение стандартного набора настроек и конфигураций для групп пользователей или компьютеров в домене или по запросу. Во всех компаниях как правило есть различные отделы, например отдел системных администраторов, разработчиков, дизайнеров, каждому из отдела необходим свой стандартный набор программного обеспечения, их рабочие компьютеры должны быть сконфигурированы под специальные задачи и нужды. С помощью групповых политик можно создать наборы настроек для конкретных групп пользователей в домене. С помощью администрирования Active Directory можно установить и управлять отдельными унифицированными наборами настроек, конкретно для дизайнеров или разработчиков.

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

Компоненты GPO

Существует два компонента групповых политик - серверный компонент и клиентский, т.е. данная структура относится к архитектуре “клиент-сервер”.

Серверный компонент - оснастка Microsoft Management Console (MMC), которая используется для указания настроек групповой политики. MMC может быть использована для создания политик для контроля и управления административными шаблонами и настройками безопасности (скрипты, установка ПО и прочее). Каждый из них называется расширением и в свою очередь каждый из них имеет дочернее расширение, которое разрешает добавление новых компонентов или обновление существующих без возможности затронуть или подвергнуть риску всю политику.

Клиентский компонент интерпретирует и применяет настройки групповой политики для компьютеров пользователей или целевым пользователям. Клиентские расширения - это компоненты, которые запущены на пользовательской системе и несут ответственность за интерпретацию обработки и применения в объекты групповой политики.

Для администрирования GPO используют Group Policy Management Console (GPMC) и Group Policy Management Editor.

Сценарии использования Active Directory GPO:

  • Централизованная настройка пакета программ Microsoft Office.
  • Централизованная настройка управлением питанием компьютеров.
  • Настройка веб-браузеров и принтеров.
  • Установка и обновление ПО.
  • Применение определенных правил в зависимости от местоположения пользователя.
  • Централизованные настройки безопасности.
  • Перенаправление каталогов в пределах домена.
  • Настройка прав доступа к приложениям и системным программам.

Оснастка Управление групповыми политиками

Для управления групповыми политиками Microsoft предоставляет консоль управления групповыми политиками (GPMC)

После установки роли Active Directory Domain Service (AD DS) на контроллер домена на сервере появится оснастка Group Policy Management. Для того, чтобы ее открыть нажмите комбинацию клавиш Win+R и в открывшемся окне введите:

gpmc.msc

Нажмите OK.

Если оснастку не удается открыть, то возможно по определенным причинам она не установлена. Установить ее можно через стандартное меню Add roles and features в диспетчере сервера, выбрав компонент Group Policy Management.

Оснастка выглядит следующим образом:

Создание объектов групповой политики

Для настройка групповых политик на windows перейдите во вкладку Forest -> Domains -> <Ваш домен> -> Group Policy Objects. С помощью правой кнопки мыши откройте меню и выберете New.

В открывшемся окне в поле Name введите удобное для вас имя групповой политики.

После этого вы увидите созданный объект в списке.

Теперь необходимо настроить созданный объект под конкретные задачи. в качестве примера удалим ссылку Games из меню Start. Для это с помощью правой кнопки мыши откройте меню объекта и выберете пункт Edit.

В редакторе групповых политик перейдите по иерархии User Configuration -> Policies -> Administrative Templates -> Start Menu and Taskbar. Найдите опцию Remove Games link from Start Menu и в контекстном меню выберете пункт Edit.

В открывшемся окне отметьте Enable для включения правила и при необходимости напишите комментарий. Нажмите OK для сохранения изменений.

На этом создание объекта групповой политики закончено.

Поиск объектов групповой политики

Как правило в корпоративных средах большое количество групповых политик, чтобы было проще найти нужный объект GPO, оснастка обладает встроенным поиском. Для этого выберете ваш лес и в контекстном меню кликните Search.

Открывшееся окно поиска интуитивно понятно для работы. В первую очередь выберете конкретный домен для поиска, также можно производить поиск во всех доменах сразу. Далее выберете нужный пункт поиска, задайте условие и значение. В примере ниже производился поиск объектов групповой политики, в которых встречается слово Default.

Удаление объекта групповой политики

Если экземпляр GPO больше не нужен, его можно удалить. Откройте консоль управления Active Directory и выберете объект для удаления, затем с помощью правой кнопки мыши выберете опцию Delete.

P. S. Другие инструкции:


Ознакомиться с другими инструкциями вы можете на нашем сайте. А чтобы попробовать услугу — кликните на кнопку ниже.

Спасибо за Вашу оценку! К сожалению, проголосовать не получилось. Попробуйте позже

Основные linux-команды для новичка / Хабр

Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

Правда, разобраться в нем немного посложнее… Потому что большинство операций выполняется в командной строке. И если вы видите в вакансии «знание linux» — от вас ожидают как раз умение выполнять простейшие операции — перейти в другую директорию, скопировать файл, создать папочку… В этой статье я расскажу про типовые операции, которые стоит уметь делать новичку. Ну и плюс пара полезняшек для тестировщиков.

Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)

Содержание


Где я? Как понять, где находишься

Команда pwd:

pwd --- мы ввели команду /home/test --- ответ системы, мы находимся в домашней директории пользователя test

Очень полезная команда, когда у вас нет ничего, кроме командной строки под рукой. Расшифровывается как

P

rint

W

orking

D

irectory. Запомните ее, пригодится.

Как понять, что находится в папке

Команда ls позволяет просмотреть содержимое каталога:

Хотя лучше использовать команду сразу с флагом «l»:

ls -l

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

У команды есть и другие флаги, но чаще всего вы будете использовать именно «ls – l».

См также:
Команда ls Linux — подробнее о команде и всех ее флагах
Команда ls – просмотр каталога — о команде для новичков (без перечисления всех флагов)

Как перейти в другую директорию

С помощью команды cd:

cd <путь к директории>

Путь может быть абсолютным или относительным.

По абсолютному пути

Либо у вас где-то записан путь, «куда идти», либо вы подсмотрели его в графическом интерфейсе (например, в

WinSCP

).

Вставляем путь в командную строку после «cd»

cd /home/student/log

Ну вот, мы переместились из домашней директории (обозначается как ~) в

/home/student/log

.

По относительному пути

Относительный путь — относительно вашей текущей директории, где вы сейчас находитесь. Если я уже нахожусь в

/home/student

, а мне надо в

/home/student/log

, команда будет такой:

cd log --- перейди в папку log из той директории, где ты сейчас находишься

Если мне надо из

/home/student/photo

в

/home/student/photo/city/msk/2017/cat_1

, команда будет такой:

cd city/msk/2017/cat_1

Я не пишу

/home/student/photo

, так как я уже там.

В линуксе можно задавать путь относительно домашней папки текущего пользователя. Домашняя директория обозначается ~/. Заметьте, не ~, а именно ~/. Дальше вы уже можете указывать подпапки:

cd ~/log

Эта команда будет работать отовсюду. И переместит нас в

/home/user/log

.

Вот пример, где я вошла под пользователем students. Исходно была в директории /var, а попала в /home/students/log:

С автодополнением

Если вы начнете набирать название папки и нажмете Tab, система сама его подставит. Если просто нажмете Tab, ничего не вводя, система начнет перебирать возможные варианты:

(cd tab) Может, ты имел в виду папку 1?
(tab) Нет? Может, папку 2?
(tab) Снова нет? Может, папку 3?
(tab) Снова нет? Может, файл 1 (она перебирает имена всех файлов и директорий, которые есть в той, где вы сейчас находитесь)?
(tab) У меня кончились варианты, поехали сначала. Папка 1?

cd lon(Tab) → cd long-long-long-long-name-folder — начали вводить название папки и система сама подставила имя (из тех, что есть в директории, где мы находимся).

cd (Tab)(Tab)(Tab) — система перебирает все файлы / папки в текущей директории.

Это очень удобно, когда перемещаешься в командной строке. Не надо вспоминать точное название папки, но можно вспомнить первую букву-две, это сократит количество вариантов.

Подняться наверх

Подняться на уровень выше:

cd ..

Если нужно поднять на два уровня выше, то

cd ../..

И так до бесконечности =) Можно использовать файл, лежащий на уровне выше или просто сменить директорию.

Обратите внимание, что команда для линукса отличается от команды для винды — слеш другой. В винде это «cd ..\..», а в линуксе именно «cd ../..».

См также:
Путь к файлу в linux

Как создать директорию

Используйте команду

mkdir

:

mkdir test --- создает папку с названием «test» там, где вы находитесь

Можно и в другом месте создать папку:

mkdir /home/test --- создает папку «test» в директории /home, даже если вы сейчас не там

Когда это нужно? Например, если вам надо сделать бекап логов. Создаете папку и сохраняете туда нужные логи. Или если вы читаете инструкцию по установке ПО и видите там «создать папку». Через командную строку это делается именно так.

См также:
Как создать каталог в Linux с помощью команды mkdir

Как создать файл

Командой

touch

:

touch app.log

Такая команда создаст пустой файл с названием «app.log». А потом уже можно открыть файл в редакторе и редактировать.

Как отредактировать файл

Вот честное слово, лучше делать это через графический интерфейс!

Но если такой возможности нет, чтож… Если использовать программы, которые есть везде, то у вас два варианта:

  1. nano — более простая программа, рассчитана на новичков
  2. vim — более сложная, но позволяет сделать кучу всего

Начнем с nano. Указываете имя команды и путь в файлу:

nano test_env.json

Для перемещения по файлу используйте кнопки со стрелками. После того, как закончите редактировать файл, нажмите:

  • Ctrl+O — чтобы сохранить
  • Ctrl+X — для выхода

Самое приятное в nano — это подсказки внизу экрана, что нажать, чтобы выйти.

А вот с vim с этим сложнее. В него легко зайти:

vim test_env.json vi test_env.json (предшественник vim)

Войти вошли, а как выйти то, аааа? Тут начинается легкая паника, потому что ни одна из стандартных комбинаций не срабатывает:

Esc, ctrl + x, ctrl + q

… Если под рукой есть второй ноутбук или хотя бы телефон / планшет с интернетом, можно прогуглить «как выйти из vim», а если у вас только одно окно с терминалом, которое вы заблокировали редактором?

Делюсь секретом, для выхода надо набрать:

  • :q — закрыть редактор
  • :q! — закрыть редактор без сохранения (если что-то меняли, то просто «:q» не проканает)

Двоеточие запускает командный режим, а там уже вводим команду

«q» (quit)

.

Исходно, когда мы открываем файл через vim, то видим его содержимое, а внизу информацию о файле:

Когда нажимаем двоеточие, оно печатается внизу:

Если не печатается, не паникуем! Тогда попробуйте нажать Esc (вернуться в нормальный режим), потом Enter (подтвердить команду), а потом снова печатайте. Фух, помогло, мы вышли оттуда!!!

На самом деле сейчас всё не так страшно. Даже если вас заслали работать в банк, где нет доступа в интернет, а вы вошли в vi и не знаете как выйти, всегда можно погулить выход с телефона. Слава мобильному интернету! Ну а если вы знаете логин-пароль от сервера, то можно просто закрыть терминал и открыть его снова.

Если нужно выйти, сохранив изменения, используйте команду

:w — сохранить файл; :q — закрыть редактор;

Ну а про возможности редактирования см статьи ниже =)

См также:
Как редактировать файлы в Ubuntu — подробнее о разных способах
Как пользоваться текстовым редактором vim — подробнее о vim и всех его опциях
Как выйти из редактора Vi или Vim? — зачем нажимать Esc

Как перенести / скопировать файл

Допустим, у нас в директории

/opt/app/log

находится

app.log

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

Скопировать файл

Команда:

cp что_копировать куда_копировать

Если мы находимся в директории

/opt/app/log

:

cp app.log /home/olga

В данном примере мы использовали относительный путь для «что копировать» — мы уже находимся рядом с логом, поэтому просто берем его. А для «куда копировать» используем абсолютный путь — копируем в

/home/olga

.

Можно сразу переименовать файл:

cp app.log /home/olga/app_test_2020_03_08.log

В этом случае мы взяли

app.log

и поместили его в папку

/home/olga

, переименовав при этом в

app_test_2020_03_08.log

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

Если в «куда копировать» файл с таким именем уже есть, система не будет ничего спрашивать, просто перезапишет его. Для примера положим в папку log внутри домашней директории файл «app.log», который там уже есть:

Никаких ошибок, система просто выполнила команду.

См также:
Копирование файлов в linux

Скопировать директорию

Команда остается та же, «cp», только используется ключ R — «копировать папку рекурсивно»:

cp -r путь_к_папке путь_к_новому_месту

Например:

cp /opt/app/log /home/olga

Так в директории /home/olga появится папка

«log»

.

Переместить файл

Если надо переместить файл, а не скопировать его, то вместо

cp (copy)

используем

mv (move)

.

cp app.log /home/olga ↓ mv app.log /home/olga

Можно использовать относительные и абсолютные пути:

mv /opt/app/logs/app.log /home/olga — абсолютные пути указаны, команда сработает из любого места

Можно сразу переименовать файл:

mv app.log /home/olga/app_2020_03_08.log — перенесли лог в /home/olga и переименовали


Переместить директорию

Аналогично перемещению файла, команда mv

mv /opt/app/log/ /home/olga/bakup/

Как удалить файл

С помощью команды

rm (remove)

:

rm test.txt — удалит файл test.txt

Если нужно удалить все файлы в текущей директории (скажем, вычищаем старые логи перед переустановкой приложения), используйте «*»:

rm * — удалит все файлы в текущей директории

Если нужно удалить папку, надо добавить флаг -r (recursive):

rm -r test_folder

Если вы пытаетесь удалить файлы, которые уже используются в программе или доступны только для чтения, система будет переспрашивать:

А теперь представьте, что вы чистите много файлов. И на каждый система переспрашивает, и надо постоянно отвечать «да, да, да...» (y – enter, y – enter, y – enter)… Чтобы удалить все без вопросов, используйте флаг -f (force):

rm -rf test_folder --- просто все удалит без разговоров

Но учтите, что это довольно опасная команда! Вот так надоест подстверждать удаление и введешь «-rf», а директорию неправильно укажешь… Ну и все, прости-прощай нужные файлы. Аккуратнее с этой командой, особенно если у вас есть root-полномочия!

Опция -v показывает имена удаляемых файлов:

rm -rfv test_folder --- удалит папку со всем содержимым, но выведет имена удаляемых файлов

Тут вы хотя бы можете осознать, что натворили )))

См также:
Как удалить каталог Linux

Как изменить владельца файла

Если у вас есть root-доступ, то вы наверняка будете выполнять все действия под ним. Ну или многие… И тогда любой созданный файл, любая папка будут принадлежать root-пользователю.

Это плохо, потому что никто другой с ними работать уже не сможет. Но можно создать файл под root-ом, а потом изменить его владельца с помощью команды chown.

Допустим, что я поднимаю сервис testbase. И он должен иметь доступ к директории user и файлу test.txt в другой директории. Так как никому другому эти файлики не нужны, а создала я их под рутом, то просто меняю владельца:

chown testbase:testbase test.txt — сменить владельца файла chown -R testbase:testbase user — сменить владельца папки

В итоге был владелец

root

, а стал

testbase

. То, что надо!

См также:
Команда chown Linux

Как установить приложение

Если вы привыкли к винде, то для вас установка приложения — это скачать некий setup файлик, запустить и до упора тыкать «далее-далее-далее». В линуксе все немного по-другому. Тут приложения ставятся как пакеты. И для каждой системы есть свой менеджер пакетов:

  • yum — red hat, centos
  • dpkg, apt — debian

См также:
5 Best Linux Package Managers for Linux Newbies

Давайте посмотрим на примере, как это работает. В командной строке очень удобно работать с Midnight Commander (mc) — это как FAR на windows. К сожалению, программа далеко не всегда есть в «чистом» дистрибутиве.

И вот вы подняли виртуалку на centos 7, хотите вызвать Midnight Commander, но облом-с.

mc

Ничего страшного, установите это приложение через yum:

yum install mc

Он там будет что-то делать, качать, а потом уточнит, согласны ли вы поставить программу с учетом ее размеров. Если да, печатаем «y»:

И система заканчивает установку.

Вот и все! Никаких тебе унылых «далее-далее-далее», сказал «установи», программа установилась! Теперь, если напечатать «mc» в командной строке, запустится Midnight Commander:

См также:
Как устанавливать программы для Linux
Yum, шпаргалка — всякие опции и плагины

Как запустить приложение

Некоторые приложения запускаются через скрипты. Например, чтобы запустить сервер приложения WildFly, нужно перейти в папку bin и запустить там

standalone.sh

. Файл с расширением .sh — это скрипт.

Чтобы запустить скрипт, нужно указать полный путь к нему:

/opt/cdi/jboss/bin/standalone.sh — запустили скрипт standalone.sh

Это важно! Даже если вы находитесь в той папке, где и скрипт, он не будет найден, если просто указать название sh-скрипта. Надо написать так:

./standalone.sh — запустили скрипт, если мы в той же директории

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

standalone.sh --- запустили скрипт standalone.sh, путь к которому прописан в PATH

См также:
Запуск скрипта sh в Linux

— подробнее о скриптах

Если же приложение запускается как сервис, то все еще проще:

service test start — запустить сервис под названием «test» service test stop — остановить сервис

Чтобы сервис test запускался автоматически при рестарте системы, используйте команду:

chkconfig test on

Она добавит службу в автозапуск.

Как понять, где установлено приложение

Вот, например, для интеграции Jenkins и newman в Jenkins надо прописать полный путь к ньюману в параметре PATH. Но как это сделать, если newman ставился автоматически через команду install? И вы уже забыли, какой путь установки он вывел? Или вообще не вы ставили?

Чтобы узнать, куда приложение установилось, используйте whereis (без пробела):

whereis newman

Как создать архив

Стандартная утилита, которая будет работать даже на «голой» системе — tar. Правда, для ее использования надо запомнить флаги. Для создания архива стандартная комбинация

cvzf

:

tar -cvzf archive.tar.gz /home/test

В данном примере мы упаковали директорию /home/test, внутри которой было две картинки — 502.jpg и 504.jpg.

Для распаковки меняем флаг «c» на «x» и убираем «z»:

tar -xvf archive.tar.gz

Хотя система пишет, что распаковала «/home/test», на самом деле папка «test» появляется там, где мы сейчас находимся.

Давайте разберемся, что все эти флаги означают:

  • c — создать архив в linux
  • x — извлечь файлы из архива
  • v — показать подробную информацию о процессе работы (без него мы бы не увидели, какие файлики запаковались / распаковались)
  • f — файл для записи архива
  • z — сжатие

Для упаковки используется опция

c

C

reate, а для распаковки

x

— e

X

tract.

Если очень хочется использовать rar, то придется изгаляться. Через yum установка не прокатит:

yum install rar yum install unrar

Говорит, нет такого пакета:

No package rar available. Error: Nothing to do

Придется выполнить целую пачку команд! Сначала скачиваем, разархивируем и компилируем:

wget http://rarlabs.com/rar/rarlinux-x64-5.4.0.tar.gz tar xzf rarlinux-x64-5.4.0.tar.gz cd rar make install

Устанавливаем:

mkdir -p /usr/local/bin mkdir -p /usr/local/lib cp rar unrar /usr/local/bin cp rarfiles.lst /etc cp default.sfx /usr/local/lib

И применяем:

unrar x test.rar

См также:
Установка RAR на Linux

Как посмотреть использованные ранее команды

Вот, допустим, вы выполняли какие-то сложные действия. Или даже не вы, а разработчик или админ! У вас что-то сломалось, пришел коллега, вжух-вжух ручками, magic — работает. А что он делал? Интересно же!

Или, может, вы писали длинную команду, а теперь ее надо повторить. Снова набирать ручками? Неохота! Тем более что есть помощники:

↑ (стрелочка «наверх») — показать последнюю команду history — показать последние 1000 команд

Если надо «отмотать» недалеко, проще через стрелочку пролистать команды. Один раз нажали — система показала последнюю команду. Еще раз нажали — предпоследнюю. И так до 1000 раз (потому что именно столько хранится в истории).

Большой бонус в том, что линукс хранит историю даже при перезапуске консоли. Это вам не как в винде — скопировал текст, скопировал другой, а первый уже потерялся. А при перезагрузке системы вообще все потерялось.

Если тыкать в стрелочку не хочется, или команды была давно, можно напечатать «history» и внимательно изучить команды.

См также:
История команд Linux — больше о возможностях history

Как посмотреть свободное место

Сколько места свободно на дисках

df -h

Сколько весит директория

du -sh du -sh * --- с разбиением

Как узнать IP компьютера

Если у вас настроены DNS-имена, вы подключаетесь к linux-машине именно по ним. Ведь так проще запомнить — это testbase, это bugred… Но иногда нужен именно IP. Например, если подключение по DNS работает только внутри рабочей сети, а коллега хочет подключиться из дома, вот и уточняет айпишник.

Чтобы узнать IP машины, используйте команду:

hostname -I

Также можно использовать

ifconfig

:

ifconfig — выведет кучу инфы, в том числе ваш внешний IP ip a — аналог, просто иногда Ifconfig дает очень много результата, тут поменьше будет

См также:
Displaying private IP addresses

Как узнать версию OS

Сидите вы у Заказчика на линуксовой машине. Пытаетесь что-то установить — не работает. Лезете гуглить, а способы установки разные для разных операционных систем. Но как понять, какая установлена на данной машине?

Используйте команду:

cat /etc/*-release

На этой виртуалке стоит CentOs 7.

Если нужна версия ядра:

uname -a

См также:
Как узнать версию Linux

Как узнать, как работает команда

Если вы не знаете, как работает команда, всегда можно спросить о ней саму систему, используя встроенную команду man:

man ls

Закрыть мануал можно с помощью клавиши q. Для того, кто первый раз в линуксовой консоли, это совсем не очевидно, а подсказки есть не везде.

Команда удобна тем, что не надо даже уходить из командной строки, сразу получаешь всю информацию. К тому же это всегда актуальная информация. А что вы там нагуглите — неизвестно =))

Хотя лично мне проще какую-то команду прогуглить, ведь так я получу русское описание + сначала самые главные флаги (а их может быть много). Но я сама новичок в линуксе, это подход новичка. А лучше сразу учиться прокачивать навык поиска по man-у. Он вам очень пригодится для более сложных задач!

Если man у программы нет, используйте флаг -h (--help):

ls -h

Как создать много тестовых папок и файлов

Допустим, у нас есть некая папка test. Создадим в ней сотню директорий и кучу файликов в каждой:

mkdir -p test/dir--{000..100} touch test/dir--{000..100}/file-{A..Z}

Вот и все, дальше можно играться с ними!

Теперь пояснения:

  • mkdir — создать директорию
  • touch — создать файл (или изменить существующий, но если файла с таким именем нет, то команда создаст новый, пустой)

А выражения в скобках играют роль функции, которая выполняется в цикле и делает ручную работу за вас:

  • {000..100} — пробежится по всем числам от 0 до 100
  • {A..Z} — пробежится по всем буквам английского алфавита от A до Z

Как я пробовала эту команду. Сначала посмотрела, где нахожусь:

$ pwd /home/test

Символ $ при описании команд означает начало строки, куда мы пишем команду. Так мы отделяем то, что ввели сами (pwd) от ответа системы (/home/test).

Ага, в домашней директории. Создам себе песочницу:

mkdir olga

Вот в ней и буду творить!

mkdir -p olga/dir--{000..100} touch olga/dir--{000..100}/file-{A..Z}

А потом можно проверить, что получилось:

cd olga ls -l

Как-то так! Имхо, полезные команды.

Я нашла их в книге «Командная строка Linux. Полное руководство», они используются для того, чтобы создать песочницу для прощупывания команды find. Я, как и автор, восхищаюсь мощью командной строки в данном случае. Всего 2 строчки, а сколько боли бы принесло сделать похожую структуру через графический интерфейс!

И, главное, тестировщику полезно — может пригодиться для тестов.

Как протестировать IOPS на Linux

Это очень полезно делать, если машину вам дает заказчик. Там точно SSD-диски? И они дают хороший iops? Если вы разрабатываете серверное приложение, и от вас требуют выдерживать нагрузку, нужно быть уверенными в том, что диски вам выдали по ТЗ.

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

Но верить админам другой стороны на слово нельзя. Если приложение работает медленно, они, разумеется, будут говорить, что у них то все хорошо, это «они» виноваты. Поэтому надо тестировать диски самим.

Я расскажу о том, как мы тестировали диски. Как проверили, сколько IOPS они выдают.

Используем утилиту fio — https://github.com/axboe/fio/releases.

1) Скачиваем последнюю версию, распаковываем, переходим в каталог. В командах ниже нужно заменить «fio-3.19» на актуальную версию из списка

cd /tmp wget https://github.com/axboe/fio/archive/fio-3.19.tar.gz tar xvzf fio-3.19.tar.gz rm fio-3.19.tar.gz cd fio-fio-3.19

2) Должны стоять пакеты для сборки

apt-get install -y gcc make libaio-dev | yum install -y make gcc libaio-devel

3) Собираем

make

4) Тестируем

./fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 32 -filename /dev/sda -ioengine libaio -direct=1

Какие должны быть результаты:

  • Средний SSD, выпущенный 2-3 года назад — 50 тысяч IOPS.
  • Свежий Samsung 960 Pro, который стоит на одной из железок у нас в офисе — 350 тысяч IOPS.

Свежесть определяется на момент написания статьи в 2017 году.

Если должно быть 50 тысяч, а диск выдает сильно меньше, то:

— он не SSD;
— есть сетевые задержки;
— неправильно примонтирован;
— с ними что-то еще плохое случилось и стоит поднять алярм.

И это все?

Разумеется, нет =))

Еще полезно изучить команду find и регулярные выражения. Тестировщику как минимум надо уметь «грепать логи» — использовать grep. Но это уже остается на самостоятельный гуглеж.
База, которая всегда нужна — pwd, cp, mv, mkdir, touch. Остальное можно легко гуглить, как только возникает необходимость.

Вот вам еще пара ссылочек от меня:

Для понимания структуры папок рекомендую статью «

Структура папок ОС Linux. Какая папка для чего нужна. Что и где лежит в линуксе

»

Книги и видео по теме

Видео:


ПО GNU/Linux — видео лекции Георгия Курячего

— очень хорошие видео-лекции

Книги:
Командная строка Linux. Уильям Шоттс
Скотт Граннеман. Linux. карманный справочник

Где тренироваться

Можно поднять виртуалку. Правда, тут сначала придется разбираться, как поднимать виртуалку )))

А можно купить облачную машину. Когда мне надо было поиграться с линуксом, я пошла на SimpleCloud (он мне в гугле одним из первых выпал и у него дружелюбный интерфейс. Но можно выбрать любой аналог) и купила самую дешманскую машину — за 150 руб в месяц. Месяца вам за глаза, чтобы «пощупать-потыркать», и этой машины с минимумом памяти тоже.

У меня был когда-то план самой платить эти 150р за то, чтобы дать машину в общий доступ. Но увы. Как я не пыталась ее огородить (закрывала команды типа ssh, ping и прочая), у меня не получилось. Всегда есть люди, которых хлебом не корми, дай испортить чужое. Выложил в общий доступ пароли? На тебе ддос-атаку с твоего сервера. Ну и сервер блокируют. После N-ой блокировки я плюнула на это дело. Кто хочет научиться, найдет 150р.

Чтобы подключиться к машине, используйте инструменты:

  • Putty — командная строка
  • WinSCP — графический интерфейс

См также:

WinSCP — что это и как использовать

Профили - Где Firefox хранит ваши закладки, пароли и другие пользовательские данные

Все изменения, сделанные в Firefox, такие как домашняя страница, используемые панели, расширения, которые вы установили, ваши закладки и сохранённые пароли хранятся в специальной папке, называемой "профилем". Ваша папка профиля хранится отдельно от исполняемых файлов Firefox, так что если вдруг что-то пойдёт не так с Firefox, ваша информация всегда сохранится. Это также значит, что вы можете удалить Firefox, не потеряв свои настройки, и что вам не нужно переустанавливать Firefox, чтобы удалить информацию или решить проблему.

  • Щёлкните по кнопке меню , затем щёлкните по кнопке и выберите .Из меню выберите . Откроется вкладка Информация для решения проблем.
  • В разделе Сведения о приложении рядом с ПапкаДиректория профиля щёлкните по кнопке Открыть папкуПоказать в FinderОткрыть каталог. Откроется окно, содержащее папку вашего профиля.Откроется папка вашего профиля.

Как найти профиль, не запуская Firefox

Firefox сохраняет вашу папку профиля на вашем компьютере, по умолчанию в этом месте:
C:\Users\<your Windows login username>\AppData\Roaming\Mozilla\Firefox\Profiles\
Папку AppData Windows скрывает по умолчанию, но вы можете найти вашу папку профиля следующим образом:

  1. Нажмите +R на клавиатуре. Откроется диалоговое окно Выполнить.
  2. Наберите:
    %APPDATA%\Mozilla\Firefox\Profiles\
  3. Щёлкните OK. Откроется окно, содержащее папки профилей.
  4. Дважды щёлкните папку с профилем, который хотите открыть. Если у вас всего один профиль, его папка будет иметь имя "default".
  1. В экране запуска, щёлкните по плитке Рабочий стол. Откроется вид Рабочий стол.
  2. На рабочем столе, наведите курсор в правый нижний угол, чтобы открыть панель чудо-кнопок.
  3. Выберите чудо-кнопку . Откроется боковая панель Поиск.
  4. В поле поиска наберите:
    %APPDATA%\Mozilla\Firefox\Profiles\
    не нажимая Enter. Появится список папок профилей.
  5. Нажмите на папку профиля, который хотите открыть (она откроется в окне). Если у вас всего один профиль, его папка будет иметь имя "default".
  1. Нажмите кнопку Пуск в Windows. Откроется меню Пуск.
  2. В поле поиска, в нижней части меню Пуск, наберите:
    %APPDATA%\Mozilla\Firefox\Profiles\
    не нажимая Enter. Список профилей появится в верхней части меню Пуск.
  3. Нажмите на папку профиля, который хотите открыть (она откроется в окне). Если у вас всего один профиль, его папка будет иметь имя "default".

  • Вы также можете найти свой профиль, нажав кнопку и затем набрать: %APPDATA%\Mozilla\Firefox\Profiles\
Примечание: Чтобы настроить Windows для отображения папки AppData и других скрытых файлов и папок, прочитайте статью Show hidden files - Windows Help.
  1. Нажмите кнопку кнопку Пуск в Windows и выберите пункт .


  2. Наберите:
    %APPDATA%\Mozilla\Firefox\Profiles\
    и нажмите кнопку OK.
    Откроется окно, содержащее папки профилей.
  3. Произведите двойной щелчок по папке профиля, который хотите открыть. Если у вас всего один профиль, его папка будет иметь имя "default".

Щёлкните по значку Finder в доке. В панели меню щёлкните по меню , и, удерживая клавишу option или alt, выберите . Откроется окно, содержащее вашу папку Library.

  1. Откройте папку Application Support, в ней откройте папку Firefox, а в ней - папку Profiles.
  2. Папка вашего профиля находится внутри этой папки. Если у вас всего один профиль, его папка будет иметь имя "default".
  1. (Ubuntu) Откройте меню в левой верхней части экрана и выберите . Появится окно Обозревателя файлов.
  2. Откройте меню и выберите , если оно ещё не отмечено.
  3. Произведите двойной щелчок по папке .mozilla.
  4. Если у вас всего один профиль, его папка будет иметь имя "default".

Примечание: Это не полный список. Приведена только важная информация.

Закладки, загрузки и история просмотров:

  • places.sqlite
    Этот файл содержит все ваши закладки Firefox, списки всех загруженных вами файлов и всех посещённых вами веб-сайтов.
  • bookmarkbackups
    Эта папка хранит резервные файлы закладок, которые могут быть использованы для восстановления закладок.
  • favicons.sqlite
    Этот файл содержит значки всех сайтов (favicons) для ваших закладок в Firefox.

Для получения дополнительной информации прочитайте статьи Как использовать закладки для запоминания и организации ваших любимых сайтов и Восстановление закладок из резервной копии или перенос их на другой компьютер.

Пароли:

  • Специфичные для сайтов настройки:
  • permissions.sqlite
  • content-prefs.sqlite

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

Поисковые системы:

Личный словарь:

  • persdict.dat
    Этот файл содержит все дополнительные слова, которые вы добавляли в словарь Firefox. Для получения большей информации прочтите статью Как проверять орфографию в Firefox?.

Автозаполнение истории:

Куки:

  • cookies.sqlite
    Куки — это небольшие фрагменты данных, сохранённые на вашем компьютере посещёнными сайтами. Обычно это что-нибудь вроде настроек сайта или статуса логина. Все куки хранятся в этом файле.

Хранилище DOM:

Хранилище DOM призвано предоставить более вместительную, безопасную и легкую в использовании альтернативу хранению информации в куках.

  • webappsstore.sqlite
    Информация для веб-сайтов хранится в этом файле.
  • chromeappsstore.sqlite
    В этом файле хранится информация для для страниц about:*.

Расширения:

Настройки сертификатов безопасности:

  • cert9.db
    В этом файле содержатся все настройки ваших сертификатов безопасности и все SSL‐сертификаты, которые вы импортировали в Firefox.

Настройки устройств защиты:

  • pkcs11.txt
    В этом файле хранится конфигурация модулей защиты.

Действия при загрузке файлов:

Сохранённая сессия:

Настройки панелей инструментов:

Пользовательские настройки:

  • prefs.js
    В этом файле хранятся настройки, изменённые пользователем, такие как изменения, внесенные вами в диалоговом окне НастройкиНастройкиНастройки Firefox. Необязательный файл user.js, если он имеется, перекрывает действие любых изменённых настроек.

Контейнеры:

  • Статья Использование Менеджера профилей для создания и удаления профилей Firefox объясняет, как создать новый профиль, установить новый профиль по умолчанию и удалить старый профиль.
  • Статья Как восстановить пользовательские данные, которые пропали после обновления Firefox объясняет, как использовать Менеджер Профилей для переключения профилей, если существует несколько профилей.
  • Статья Резервирование и восстановление данных в профилях Firefox объясняет, как сохранить резервную копию профиля и как восстановить профиль. Также эта статья объясняет, как перенести ваш профиль на другое место вашего жёсткого диска или на другой компьютер.
  • Статья Восстановление важных данных из старого профиля объясняет, как копировать файлы в новый профиль и включает список файлов, которые содержат информацию, полезную для восстановления.

Удалить файлы и каталоги

Дамиан Стельмах

Из пула простых, тривиальных и очевидных команд для обсуждения нам осталось обсудить еще одну, а именно команду удаления файлов и каталогов, то есть rm . Сама команда может быть не эффектной, но при ее обсуждении мы введем дополнительные хаки для облегчения работы. Начнем с синтаксиса, он тривиален, просто введите:

 rm имя файла 
и все, файл с данным именем будет удален.

Если мы хотим удалить каталог или набор каталогов, мы должны добавить в команду параметр r . Такая команда, например:

 rm -r документы 
удалит данный каталог со всем его содержимым.

Разумеется, мы можем удалять не только целые наборы каталогов, но и отдельные каталоги в глубине структуры. Выполнение такой команды, например.

 пм-р документы /2018/*
удалит содержимое только каталога 2018 2018. Звездочка просто означает все в этом каталоге.

Как правило, звездочка очень хорошо используется в системе, потому что она не только является всем, но и работает как любой другой символ.

Предположим, что он хочет удалить из каталога документов папку, содержащую, например, число 9 в своем имени. Выполнение такой команды, например.

 rm -r документы / * [9] 

Удаляет только каталог с номером 9 в его имени.

Разумеется, в таких квадратных скобках можно написать любую другую строку символов и тогда команда будет выполняться только для тех файлов и каталогов, в именах которых есть хотя бы один заданный символ.9]

Удаляет все подкаталоги, хранящиеся в каталоге документов , кроме каталогов с номером 9 в имени.

Команды могут свободно усложняться. Такие например:

 rm -r документы/*[89]/*[k]*
Он удалит только каталоги с именами, содержащими букву k , которые находятся в каталоге с номером 8 или 9 .

Точки, звездочки, вопросительные знаки и квадратные скобки можно использовать в большинстве команд, связанных с файлами или каталогами, они особенно полезны при написании скриптов.

.

Как удалить файлы и каталоги в терминале Linux

Команды rm и rmdir удаляют файлы и каталоги в Linux, macOS и других Unix-подобных операционных системах. Они аналогичны командам del и deltree в Windows и DOS. Эти команды очень мощные и имеют довольно много опций.

Обратите внимание, что файлы и каталоги, удаленные с помощью rm и rmdir, не перемещаются в корзину. Они сразу удаляются с компьютера. Если вы случайно удалите файлы с помощью этих команд, единственный способ восстановить их — сделать резервную копию.

Как удалить файлы с помощью rm

Самый простой случай — удалить один файл из текущего каталога. Введите команду rm, затем пробел и имя файла, который вы хотите удалить.

 rm file_1.txt 

Если файл находится не в текущем рабочем каталоге, введите путь к местоположению файла.

 rm ./path/to/the/file/file_1.txt 

Вы можете передать более одного имени файла в rm. Это приведет к удалению всех указанных файлов.

 rm file_2.txt file_3.txt 

Вы можете использовать подстановочные знаки для выбора групп файлов для удаления. * Представляет несколько символов, а символ? представляет один символ. Эта команда удалит все файлы изображений png в текущем рабочем каталоге.

 rm * .png 

Эта команда удалит все файлы с односимвольным расширением. Например, это удалит File.1 и File.2, но не File.12.

 п.м.*.? 

Если файл защищен от записи, вам будет предложено удалить файл.Вы должны ответить y или n и нажать «Enter».

Чтобы снизить риск использования rm с подстановочными знаками, используйте параметр -i (интерактивный). Это требует подтверждения удаления каждого файла.

 rm -i *.dat 

Опция -f (сила) противоположна взаимодействию. Не запрашивает подтверждение, даже если файлы защищены от записи.

 rm -f имя файла 

Как удалить каталоги с помощью rm

Чтобы удалить пустой каталог, используйте параметр -d (каталог).Вы можете использовать подстановочные знаки (* и?) в именах каталогов, а также в именах файлов.

 rm -d каталог 

При указании более одного имени каталога удаляются все указанные пустые каталоги.

 rm -d каталог1 каталог2 / путь / к / каталог3 

Чтобы удалить непустые каталоги, используйте параметр -r (рекурсивный). Чтобы было ясно, это удаляет каталоги и все файлы и подкаталоги в них.

 rm -r каталог1 каталог2 каталог3 

Если каталог или файл защищены от записи, вам будет предложено подтвердить удаление.Чтобы удалить непустые каталоги и подавить эти подсказки, используйте вместе параметры -r (рекурсия) и -f (принудительно).

 rm -rf каталог 

Здесь требуется осторожность. Ошибка в команде rm -rf может привести к потере данных или неисправности системы. Это опасно, и осторожность — лучшее правило. Чтобы понять структуру каталогов и файлы, которые rm -rf удалит, используйте команду дерева.

Используйте apt-get для установки этого пакета в вашей системе, если вы используете Ubuntu или другой дистрибутив на основе Debian.В других дистрибутивах Linux вместо этого используйте инструмент управления пакетами дистрибутива Linux.

 sudo apt-get install tree 

Запуск команды дерева создает простую для понимания диаграмму каталога и файловой структуры ниже каталога, из которого он запускается.

 дерево 

Также можно указать путь к дереву командой для запуска дерева из другого каталога в файловой системе.

 дерево путь / к каталогу / 

Команда rm также имеет параметры –one-file-system, –no-preserve-root, –preserve-root, но они рекомендуются только для опытных пользователей.Если что-то пойдет не так, вы можете случайно удалить все системные файлы. См. справочную страницу для получения дополнительной информации.

Как удалить каталоги с помощью rmdir

Существует еще одна команда, называемая rmdir, которую вы можете использовать для удаления каталогов. Разница между rm и rmdir заключается в том, что rmdir может удалять только пустые каталоги. Он никогда не удалит файлы.

Самый простой случай — удалить один пустой каталог. Как и в случае с rm, вы можете передать несколько имен каталогов в rmdir или путь к каталогу.

Удалить один каталог из текущего каталога, передав его имя в rmdir:

 rmdir directory 

Удалить несколько каталогов, передав список имен в rmdir:

 rmdir directory1 directory2 directory3 

Удалить каталог за пределами текущего каталога указав полный путь к этому каталогу:

 rmdir /путь/к/каталогу 

Если вы попытаетесь удалить непустую папку, rmdir выдаст сообщение об ошибке. В следующем примере rmdir успешно и без вывода сообщений удаляет каталог клиента, но отказывается удалять каталог проектов, так как он содержит файлы.Директория проекта остается такой же, как и была, а файлы в ней остаются нетронутыми.

Когда rmdir сообщает об ошибке «Каталог не пуст», он прекращает обработку каталогов, переданных ему в командной строке. Если вы попросили удалить четыре каталога, а первый содержал файлы, rmdir отобразит сообщение об ошибке и больше ничего не сделает. Вы можете заставить его игнорировать эти ошибки с помощью параметра –ignore-fail-on-nonblank, чтобы обрабатывались другие каталоги.

В примере ниже в rmdir перенесены две папки, это job/reports и job/quotes. Команда включает опцию –ignore-fail-on-non-empty. Папка work/reports содержит файлы, поэтому rmdir не может их удалить. Опция --ignore-fail-on-non-empty заставляет rmdir игнорировать ошибку и переходить к следующей папке, которую необходимо обработать, work/quotes. Это пустая папка, и rmdir ее удаляет.

Это была использованная команда.

 rmdir --ignore-fail-on-non-empty work/reports/work/quotes 

Вы можете использовать параметр -p (parents) для удаления каталога, а также его родительских каталогов.Этот трюк работает, потому что rmdir запускается в целевом каталоге, а затем возвращается к родительскому каталогу. Теперь этот каталог должен быть пуст, чтобы его можно было удалить с помощью rmdir, и процесс повторяет шаги вверх по пути, указанному в rmdir.

В следующем примере в rmdir передается команда:

 rmdir -p work/invoices 

И счета, и рабочие каталоги удаляются по запросу.

Используете ли вы Bash или любую другую оболочку, Linux предоставляет гибкие и эффективные команды для удаления каталогов и файлов непосредственно из командной строки терминала.Некоторые люди предпочитают, чтобы рабочий процесс вращался вокруг терминала. У других может не быть выбора в этом вопросе. Они могут работать на серверах без установленного графического интерфейса или в удаленном сеансе безголовой системы, такой как Raspberry Pi. Эти команды идеально подходят для этой группы людей.

Но какой бы тип рабочего процесса вы ни предпочли, эти команды очень хорошо подходят для включения в сценарии оболочки. Если сценарий запускается заданием cron, он может помочь автоматизировать рутинные служебные задачи, такие как очистка ненужных файлов журнала.Если вы исследуете этот вариант использования, помните о силе этих команд, тщательно все тестируйте и всегда сохраняйте текущую резервную копию.

.

Как удалить (удалить) директорию в Linux 2022

Существует несколько различных способов удаления каталогов в системах Linux. Если вы используете настольный файловый менеджер, такой как Gnome Files или KDE Dolphin, вы можете удалять файлы и каталоги с помощью графического интерфейса менеджера. Но если вы работаете на безголовом сервере или хотите удалить сразу несколько каталогов, лучший вариант — удалить каталоги (папки) из командной строки.

, мы объясним, как удалить каталоги в Linux с помощью команд rmdir , rm и find .

Перед началом работы

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

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

В большинстве файловых систем Linux для удаления каталога требуется разрешение на запись в каталог и его содержимое.В противном случае вы получите ошибку «Операция не разрешена».

Имена каталогов с пробелами должны начинаться с обратной косой черты (/).

Удаление каталогов с помощью rmdir

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

Чтобы удалить каталог с помощью rmdir , введите команду, за которой следует имя каталога, который вы хотите удалить.Например, чтобы удалить каталог с именем dir1 , введите:

rmdir dir1

Если каталог не пуст, вы получите следующую ошибку:

rmdir: не удалось удалить 'dir1': Нет такого файл или каталог

В этом случае вы должны использовать команду rm или вручную удалить содержимое каталога, прежде чем сможете его удалить.

Удаление каталогов с помощью rm

rm — это утилита командной строки для удаления файлов и каталогов.В отличие от команды rmdir , команда rm может удалять как пустые, так и непустые каталоги.

Используется по умолчанию без каких-либо опций rm не удаляет каталоги. Чтобы удалить пустой каталог, используйте параметр -d ( --dir ), а для удаления непустого каталога и всего его содержимого используйте параметр -r ( --recursive или - Р ).

Например, чтобы удалить каталог с именем dir1 и все его содержимое, введите:

rm -r dir1

Если каталог или файл в каталоге защищены от записи, вам будет предложено подтвердить удаление. .Чтобы удалить каталог без запроса, используйте параметр -f :

rm -rf dir1

Чтобы удалить сразу несколько каталогов, используйте команду rm , за которой следует имена каталогов, разделенные пробелом. Следующая команда удалит все перечисленные каталоги и их содержимое:

rm -r dir1 dir2 dir3

Опция -i сообщает rm запрашивать подтверждение для удаления каждого подкаталога и файла. Если каталог содержит много файлов, это может немного раздражать, поэтому вы можете рассмотреть возможность использования опции -I , которая предложит вам только один раз, прежде чем продолжить удаление.

rm -rI dir1

Чтобы удалить каталог, введите y и нажмите Введите .

rm: удалить 1 аргумент рекурсивно? y

Вы также можете использовать обычные расширения для сопоставления и удаления нескольких каталогов. Например, чтобы удалить все каталоги первого уровня в текущем каталоге, который заканчивается на _bak , используйте следующую команду:

rm -r * _bak

Использование обычных расширений при удалении каталогов может быть рискованным.Рекомендуется сначала перечислить каталоги с помощью команды ls , чтобы вы могли видеть, какие каталоги будут удалены, прежде чем запускать команду rm .

Удаление каталогов с помощью функции find

find — это утилита командной строки, которая позволяет искать файлы и каталоги на основе заданного выражения и выполнять действия над каждым совпадающим файлом или каталогом.

Наиболее распространенным сценарием является использование find для удаления каталогов на основе шаблона.Например, чтобы удалить все каталоги, оканчивающиеся на _cache в текущем рабочем каталоге, введите:

find. -type d -name '*_cache' -exec rm -r {} +

Разберем приведенную выше команду:

  • / dir - рекурсивный поиск в текущем рабочем каталоге (. ). -type d - Ограничивает поиск каталогами. -name '*_cache' - находит только каталоги, которые заканчиваются на _cache -exec - выполняет внешнюю команду с необязательными аргументами, в данном случае это rm -r . {} + - добавляет найденные файлы в конец команды rm .

Удаление всех пустых каталогов

Чтобы удалить все пустые каталоги из дерева каталогов, используйте:

find / dir -type d -empty -delete

Вот объяснение используемых опций:

  • /dir
    - рекурсивный поиск в каталоге /dir . -type d - Ограничивает поиск каталогами. -пусто - Ограничивает поиск только пустыми каталогами. -delete - удаляет все найденные пустые каталоги поддерева. -delete может удалять только пустые каталоги.
  • -удалить вариант -удалить будьте очень осторожны. Командная строка Find оценивается как выражение, и если вы сначала добавите опцию -delete , команда удалит все, что ниже указанных начальных точек. Всегда используйте -delete в качестве последней опции и проверяйте команду без опции -delete перед ее удалением.

    /bin/rm: слишком длинный список аргументов

    Это сообщение об ошибке появляется при удалении каталога, содержащего огромное количество файлов, с помощью команды rm . Это связано с тем, что количество файлов превышает предельный размер аргумента системной командной строки.

    Существует несколько различных решений этой проблемы. Например, вы можете cd перейти к каталогу и вручную или по циклу удалить подкаталоги один за другим.

    Самое простое решение - удалить все файлы в каталоге с помощью команды find , а затем удалить каталог:

    find / dir -type f -delete && rm -r / dir

    Запрос

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

    Удаление каталогов — простой и легкий процесс, но будьте осторожны, чтобы не удалить важные данные.

    rm rmdir найти терминал .

    Справочная страница Ubuntu: rm — удаляет файлы или каталоги

    Предоставлено: manpages-en_0.5-1_all
     
    ИМЯ
     rm - удалить файлы или каталоги 
    СИНТАКСИС
      rm  [ ОПЦИЯ ] ...  ФАЙЛ  ... 
    ОПИСАНИЕ
     Эта справочная страница документирует версию GNU  rm .  rm  удаляет любой заданный файлы.По умолчанию он не удаляет каталоги. Если указаны опции  -I  или  --interactive = раз  и файлов больше трех, или если указываются опции  -r ,  -R  или  --recursive , затем  rm  подсказывает пользователю перед выполнением данных операция. Если ответ отрицательный, рассматриваемая деятельность прерывается. Кроме того, если файл доступен для записи, стандартный ввод является терминалом, а не Была указана опция  -f  или  --force  или были указаны опции  -i  или  --interactive = всегда , затем  rm  подсказки пользователя, следует ли удалить данный файл.Если ответ отрицательный, файл пропускается. 
    ОПЦИИ
     Удалить (с отсоединением)  ФАЙЛ (I) .  -f ,  --force  игнорирует несуществующие файлы и аргументы, никогда не запрашивая  -i  спрашивает перед каждым удалением  -I  запрашивает один раз перед удалением более трех файлов или при выборе удаления рекурсивный. Это менее раздражает, чем  и , но все же дает вам защиту от большинство ошибок  - интерактивный  [=  КОГДА ] спрашивает согласно  КОГДА :  никогда  (никогда),  один раз  (как  -I ) или  всегда  (как  и ).Не давая  КОГДА  всегда спрашивает  --одна файловая система  пропускает любые найденные каталоги при рекурсивном удалении файловой иерархии в файловой системе, отличной от указанного аргумента командной строки  --нет-сохранения-корень  root / не считается специальным  --сохранить-корень  не удаляет / (по умолчанию)  -r ,  -R ,  --рекурсивный  рекурсивно удаляет каталоги и их содержимое  -d ,  --dir  удаляет пустые каталоги  -v ,  --подробный  перечислить текущую деятельность  --help  отображает этот текст и завершает работу  --версия  отображает информацию о версии и завершает работу По умолчанию  rm  не удаляет каталоги.Чтобы удалить каждый заданный каталог вместе со всем содержимого используйте  --recursive  (или  -r  или  -R ). Чтобы удалить файл, начинающийся с "-", например "-foo", используйте один из следующие команды:  пм   -  Б-фу  пм  ./-foo Обратите внимание, что при удалении файлов по  rm  возможно восстановление частей в зависимости от вашего опыта и/или времени.Чтобы иметь больше чтобы убедиться, что содержимое действительно не подлежит восстановлению, рассмотрите возможность использования программы  клочок . 
    АВТОР
     Написано Полом Рубином, Дэвидом Маккензи, Ричардом М. Столменом и Джимом Мейерингом. 
    ОТЧЕТНОСТЬ ОШИБКИ
     Пожалуйста, присылайте отчеты об ошибках rm (на английском языке) по адресу [email protected]. Веб-сайт GNU coreutils:  Общая справка по программному обеспечению GNU:  Пожалуйста, присылайте сообщения об ошибках в переводе rm на  
    ПРАВА АВТОРСКИЕ ПРАВА
     Авторское право © 2013 Free Software Foundation, Inc. Лицензия GPLv3 +: GNU GPL версии 3 или позже .Это бесплатное программное обеспечение: его можно изменять и распространять. Нет НИКАКИХ ГАРАНТИЙ, насколько это разрешено законом. 
    СМ. ТАКЖЕ
      отключить  (1),  отключить  (2),  chattr  (1),  измельчить  (1) Полная документация для  rm  доступна в формате Texinfo. Если программы  info  и  rm  правильно установлена, эта команда  информация   coreutils   'rm   вызов'  должен дать вам доступ к полному руководству.
    ПЕРЕВОД
     Авторы польского перевода этой страницы руководства: Przemek Borys (PTM) , Войтек Котвица (PTM)  и Михал Кулах . Польский перевод является частью проекта manpages-pl; комментарии, помощь, отчеты об ошибках сайт http://sourceforge.net/projects/manpages-pl/. Он совместим с версией  8.21  оригинал. 
    .

    Смотрите также

    Только новые статьи

    Введите свой e-mail

    Видео-курс

    Blender для новичков

    Ваше имя:Ваш E-Mail: