Шпаргалка: команды в линуксе

1576

Удаление репозитория PPA

sudo add-apt-repository --remove ppa:whatever/ppa

Удаление приложений

sudo apt remove --purge _name_
sudo apt autoremove && sudo apt autoclean

Запрет создания дополнительных столов в elementary os

gsettings set org.pantheon.desktop.gala.behavior dynamic-workspaces false

Изменить группу пользователей на папке рекурсивно

chown -R www-data:www-data ./*

Изменить права на папку рекурсивно

chmod -R 777 ./*

Права на исполнение файла группе "staff"

Дать права группе "staff"

chown :staff /home/user/scripts/script.sh

Дать права на запуск группе

chmod g+x /home/user/scripts/script.sh

Дать права на запуск всем (в том числе группе)

chmod a+x /home/user/scripts/script.sh

Право на изменение файла пользователю "user"

chown user /home/user/scripts/script.sh
chmod u+rw /home/user/scripts/script.sh

Право на чтение файла группе "staff"

chown :staff /home/user/scripts/script.sh
chmod g+r /home/user/scripts/script.sh

Право на изменение и создание файлов в каталоге ~/scripts группе "staff"

chown -R :staff /home/user/scripts
chmod -R g+rw /home/user/scripts

Удалить всё что в текущей директории

rm -rf ./*

Скопировать папку с содержимым в другую директорию

cp -r dir1/. dir2

Скопировать папку рекурсивно с сервера в локальную папку

scp -r name@host:~/ssh_dir/copy_dir /mnt/c/paste_dir

Скачиваем файл на локальную машину

scp login@server:/dir/name.file /local_dir

Заливаем файл на удаленный сервер

scp /local_dir/name.file login@server:/dir

Перемещаем содержимое папки в родительскую директорию

mv * ../

ssh с понятным путём командой

Если в ssh не отображается путь до активной директории

export PS1="\u@\h:\w> "
или если нужна красивая подсветка
export PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ "

Найти все файлы которые изменялись после 01.11.2018

find . -type f -newermt 20181101 > update_files.txt

Переименование части имени списка файлов

rename 's/prefix1/prefix2/' *.jpg

Переименование части имени списка файлов (рекурсивно)

find . -name "*.jpg*" | rename 's/prefix1/prefix2/'

Найти слово внутри файла во всех директориях и записать что нашел в файл

grep -ilR 'name' > greplog.txt

Архивация текущей директории в zip архив

zip -r folder.zip ./

Распаковать zip архив

unzip folder.zip

Конвертация WEBP в PNG

sudo apt install webp

dwebp name.webp -o name.png

Дока: тут

Импорт БД

mysql -u пользователь_БД -p имя_БД < файл_дампа_БД

Экспорт БД (создание бэкапа)

mysqldump -u пользователь_БД -p имя_БД > имя_файла

Добавление сайта на apache2

example заменить на название нового сайта

  1. Создать url:

    sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.conf
  2. Записать данные в hosts:

    sudo nano /etc/hosts
  3. Редактирование созданного url:

    sudo nano /etc/apache2/sites-available/example.conf
  4. Включить url:

    sudo a2ensite example.conf
  5. Перезапуск apache:

    sudo /etc/init.d/apache2 restart

    Пример example.conf

    <VirtualHost *:80>
        #ServerName example
    
        DocumentRoot /var/www/html
    
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory /var/www/html>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
    </VirtualHost>

    Сборка js файла

    npx terser -c -o test.min.js -- test.js
    OR
    npx esbuild test.js --bundle --outfile=test.min2.js --minify