Команды Linux
основная команда
uname -m показывает процессорную архитектуру машины
uname -r показывает используемую версию ядра
dmidecode -q Показать аппаратные компоненты системы
hdparm -tT /dev/sda выполняет тестовое чтение информации об ОС на диске.
arch Отображает процессорную архитектуру машины.
uname -m показывает процессорную архитектуру машины
uname -r показывает используемую версию ядра
dmidecode -q показать аппаратные компоненты системы - (SMBIOS/DMI)
hdparm -i /dev/hda перечисляет архитектурные свойства диска
hdparm -tT /dev/sda выполняет тестовое чтение с диска
cat /proc/cpuinfo отобразить информацию о процессоре
cat /proc/interrupts показывает прерывания
cat /proc/meminfo проверить использование памяти
cat /proc/swaps показывает, какие свопы используются
cat /proc/version показывает версию ядра
cat /proc/net/dev отображает сетевые адаптеры и статистику
cat /proc/mounts показывает смонтированные файловые системы
lspci -tv список устройств PCI
lsusb -tv показать USB-устройства
системная дата отображения даты
cal 2007 отображает календарь на 2007 год
date 041217002007.00 Установка даты и времени - месяц день час минута год.секунда
clock -w сохранить модификацию времени в BIOS
неисправность
shutdown -h теперь выключите систему (1)
init 0 выключение системы(2)
система отключения telinit 0(3)
shutdown -h часы:минуты & Выключить систему в соответствии с запланированным временем
shutdown -c отменяет выключение системы в запланированное время
shutdown -r теперь перезапустить (1)
перезагрузка перезагрузка(2)
выйти
поиск файлов
find / -name file1 начинается с '/' для входа в корневую файловую систему для поиска файлов и каталогов
find / -user user1 ищет файлы и каталоги, принадлежащие пользователю 'user1'
find /home/user1 -name \*.bin ищет файлы, оканчивающиеся на '.bin', в каталоге '/home/user1'
find /usr/bin -type f -atime +100 Поиск исполняемых файлов, которые не использовались в течение последних 100 дней.
find /usr/bin -type f -mtime -10 Поиск файлов, созданных или измененных в течение 10 дней
find / -name \*.rpm -exec chmod 755 '{}' \ Искать файлы, оканчивающиеся на '.rpm', и определять их разрешения
find / -xdev -name \*.rpm Поиск файлов, оканчивающихся на «.rpm», игнорируя съемные устройства, такие как компакт-диски и ярлыки.
locate \*.ps находит файлы, оканчивающиеся на '.ps' - сначала запустите 'updatedb'
где halt показывает расположение бинарника, источника или человека
который halt отображает полный путь к бинарному или исполняемому файлу
Смонтировать файловую систему
mount /dev/hda2 /mnt/hda2 монтирует диск с именем hda2 - убедитесь, что каталог '/mnt/hda2' уже существует
umount /dev/hda2 Размонтировать диск с именем hda2 - сначала выйти из точки монтирования '/mnt/hda2'
fuser -km /mnt/hda2 Принудительно размонтировать, когда устройство занято
umount -n /mnt/hda2 запускает размонтирование без записи файла /etc/mtab — полезно, когда файл доступен только для чтения или когда диск заполнен
mount /dev/fd0 /mnt/floppy монтировать дискету
смонтировать /dev/cdrom /mnt/cdrom смонтировать cdrom или dvdrom
смонтировать /dev/hdc /mnt/cdrecorder смонтировать cdrw или dvdrom
смонтировать /dev/hdb /mnt/cdrecorder смонтировать cdrw или dvdrom
mount -o loop file.iso /mnt/cdrom монтировать файл или файл образа ISO
mount -t vfat /dev/hda5 /mnt/hda5 монтировать файловую систему Windows FAT32
смонтировать /dev/sda1 /mnt/usbdisk смонтировать ярлык usb или флешку
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share монтировать общий сетевой ресурс Windows
место на диске
df -h отображает список смонтированных разделов
ls -lSr |more Упорядочить файлы и каталоги по размеру
du -sh dir1 Оценить дисковое пространство, используемое каталогом 'dir1'
du -sk * | sort -rn Отображать размер файлов и каталогов по порядку в зависимости от размера емкости
Упаковать и сжать файлы
bunzip2 file1.bz2 распаковать файл с именем 'file1.bz2'
bzip2 file1 сжимает файл с именем «file1»
gunzip file1.gz распаковывает файл с именем «file1.gz»
gzip file1 Сжать файл с именем «file1»
gzip -9 максимальное сжатие файла1
rar a file1.rar test_file создает пакет с именем «file1.rar»
rar a file1.rar file1 file2 dir1 сжать «file1», «file2» и каталог «dir1» одновременно
rar x file1.rar распаковать пакет rar
unrar x file1.rar распаковать пакет rar
tar -cvf archive.tar file1 создает несжатый архив
tar -cvf archive.tar файл1 файл2 каталог1 Создать архив, содержащий «файл1», «файл2» и «каталог1».
tar -tf archive.tar отображает содержимое пакета
tar -xvf archive.tar выпускает пакет
tar -xvf archive.tar -C /tmp выпустить сжатый пакет в каталог /tmp
tar -cvfj archive.tar.bz2 dir1 Создать сжатый пакет в формате bzip2
tar -xvfj archive.tar.bz2 Распаковать сжатый пакет в формате bzip2
tar -cvfz archive.tar.gz dir1 Создать сжатый пакет в формате gzip
tar -xvfz archive.tar.gz распаковывает сжатый пакет в формате gzip
zip file1.zip file1 создает сжатый пакет в формате zip
zip -r файл1.zip файл1 файл2 каталог1 Одновременно сжать несколько файлов и каталогов в сжатый пакет в формате zip
unzip file1.zip распаковать сжатый пакет в формате zip
просмотреть содержимое файла
cat file1 просматривает содержимое файла, начиная с первого байта.
tac file1 просмотреть содержимое файла в обратном порядке, начиная с последней строки
еще файл1 просмотреть содержимое длинного файла
less file1 похож на команду «больше», но позволяет выполнять как обратные, так и прямые операции над файлами.
head -2 file1 Просмотр первых двух строк файла
tail -2 file1 Просмотр двух последних строк файла
tail -f /var/log/messages Просмотр того, что добавляется в файл в режиме реального времени
обработка текста
кот файл1 файл2 ... | command <> file1_in.txt_or_file1_out.txt общий синтаксис для обработки текста с использованием PIPE, STDIN и STDOUT
cat file1 | command( sed, grep, awk, grep и т. д.) > result.txt Объедините подробный текст файла и напишите введение в новый файл
cat file1 | command( sed, grep, awk, grep и т. д.) >> result.txt Объедините подробный текст файла и напишите введение в существующий файл
grep Aug /var/log/messages ищет ключевое слово «Aug» в файле «/var/log/messages».
grep ^Aug /var/log/messages Найти слова, начинающиеся с «Aug», в файле «/var/log/messages»
grep [0-9] /var/log/messages выбирает все строки, содержащие числа в файле '/var/log/messages'
grep Aug -R /var/log/* Поиск строки «Aug» в каталоге «/var/log» и последующих каталогах
sed 's/stringa1/stringa2/g' example.txt Заменить «string1» в файле example.txt на «string2»
sed '/^$/d' example.txt удаляет все пустые строки из файла example.txt
sed '/ *#/d; /^$/d' example.txt удаляет все комментарии и пустые строки из файла example.txt
echo 'esempio' | tr '[:lower:]' '[:upper:]' Объединить содержимое верхней и нижней ячеек
sed -e '1d' result.txt исключает первую строку из файла example.txt
sed -n '/stringa1/p' Просмотр только строк, содержащих слово "string1"
sed -e 's/ *$//' example.txt удаляет последний пустой символ каждой строки
sed -e 's/stringa1//g' example.txt удаляет из документа только слово "string1" и сохраняет остальные
sed -n '1,5p;5q' example.txt Просмотр содержимого с первой до пятой строки
sed -n '5p;5q' example.txt Показать строку 5
sed -e 's/00*/0/g' example.txt заменяет несколько нулей одним нулем
cat -n file1 указывает количество строк в файле
cat example.txt | awk 'NR%2==1' удаляет все четные строки в файле example.txt
echo abc | awk '{print $1}' Просмотр первого столбца строки
echo abc | awk '{print $1,$3}' Просмотр первого и третьего столбцов строки
вставить файл1 файл2 Объединить содержимое двух файлов или двух столбцов
paste -d '+' файл1 файл2 Объединить содержимое двух файлов или двух столбцов, разделенных знаком «+» посередине
sort file1 file2 Сортировать содержимое двух файлов
sort файл1 файл2 | uniq Удалить объединение двух файлов (сохраняется только одна копия повторяющихся строк)
sort файл1 файл2 | uniq -u удалить пересечение, оставить остальные строки
sort файл1 файл2 | uniq -d Убрать пересечение двух файлов (оставить только файлы, существующие в обоих файлах)
comm -1 файл1 файл2 Сравнить содержимое двух файлов и удалить только содержимое, содержащееся в 'файл1'
comm -2 файл1 файл2 Сравнить содержимое двух файлов и удалить только содержимое, содержащееся в 'файл2'
comm -3 файл1 файл2 Сравнить содержимое двух файлов и удалить только те части, которые являются общими для обоих файлов
Файловая система
mkfs /dev/hda1 создает файловую систему на разделе hda1
mke2fs /dev/hda1 создает файловую систему Linux ext2 в разделе hda1.
mke2fs -j /dev/hda1 Создать файловую систему linux ext3 (журнал) в разделе hda1
mkfs -t vfat 32 -F /dev/hda1 Создать файловую систему FAT32
fdformat -n /dev/fd0 отформатировать дискету
mkswap /dev/hda3 создает файловую систему подкачки
сеть
ifconfig eth0 показывает конфигурацию сетевой карты
ifup eth0 включить сетевое устройство eth0
ifdown eth0 отключить сетевое устройство eth0
ifconfig eth0 192.168.1.1 сетевая маска 255.255.255.0 IP-адрес управления
ifconfig eth0 promisc устанавливает для eth0 неразборчивый режим для перехвата пакетов (обнюхивание)
dhclient eth0 включает «eth0» в режиме dhcp
route -n показать таблицу маршрутизации
route add -net 0/0 gw IP_Gateway настроить шлюз по умолчанию
route add -net 192.168.0.0 маска подсети 255.255.0.0 gw 192.168.1.1 настроить статический маршрут для доступа к сети «192.168.0.0/16»
route del 0/0 gw IP_gateway удалить статический маршрут
echo "1" > /proc/sys/net/ipv4/ip_forward активировать IP-маршрутизацию
ethtool eth0 показывает статистику сетевой карты eth0
netstat -tup показать все активные сетевые подключения и их PID
netstat -tupl показать все сетевые службы, прослушивающие систему, и их PID
tcpdump tcp порт 80 показывает весь трафик HTTP
другой
export TERM=linux — установите для переменной среды TERM значение linux, что очень полезно для отображения терминала Linux.
export LD_LIBRARY_PATH=.— LD_LIBRARY_PATH — это переменная среды, которая сообщает динамическому компоновщику, где искать файлы общей библиотеки. Например, если вы добавите в переменные среды export LD_LIBRARY_PATH=., то динамический компоновщик будет искать файлы общей библиотеки в текущем каталоге.
Git-команды
git init — Инициализировать новый репозиторий Git.
git clone — локально клонировать удаленный репозиторий Git.
git add — добавить файл в тестовую область Git.
git commit — фиксирует файлы из промежуточной области в репозиторий Git.
git status — показывает статус рабочего каталога и промежуточной области.
git log — просмотр журнала коммитов репозитория Git.
git log --grep=x — найти ключевые слова из лога
git log --pretty=fuller — просмотреть время модификации, вы можете увидеть подробное время отправки
git log --after="2020-9-23 00:00:00" --before="2020-9-23 23:59:59" - Просмотр записей коммитов за определенный период времени
git log --oneline --graph --all — графически отображать записи коммитов
git log xxx.c — показать коммиты для файла
git branch — перечислить локальные ветки или создать/удалить/переименовать ветки.
git ветка новая ветка уже имеет ветку - создайте новую ветку на основе ветки
git branch Идентификатор коммита определенной ветки новой ветки — создать ветку на основе определенного коммита
git rev-parse --abbrev-ref HEAD — показывать текущую ветку, только если версия Git старше
git checkout — переключать ветки или восстанавливать файлы в рабочем каталоге.
git checkout -b new branch — создать ветку и переключиться на нее
git merge — объединить ветку с текущей веткой.
git pull — извлечь последний коммит из удаленного репозитория и объединить его с текущей веткой.
git push — отправить локальные коммиты в удаленный репозиторий.
git push origin xxx -f - принудительно нажать
git fetch — вытягивает последние коммиты из удаленного репозитория, не сливая их автоматически в текущую ветку.
git remote — управление списком удаленных репозиториев.
git remote -v — список всех пультов
git remote add URL-адрес — добавить удаленный
git удаленное добавление источника [email protected]:/home/git/.projects/nrf51822.git
git remote remove name of remote — удалить удаленный
git stash — спрятать незафиксированные изменения в рабочем каталоге, чтобы восстановить их позже.
git stash list — список текущих изменений резервной копии
git stash pop stash@{1} — вызвать модификацию рабочего содержимого текущего узла и удалить запись узла.
git stash apply stash@{1} – вызвать модификацию рабочего содержимого текущего узла без удаления записи узла.
git tag — пометить коммит.
git diff — показать рабочий каталог и промежуточную область или различия между двумя коммитами.
git reset — вернуться к предыдущей фиксации или отменить файлы из промежуточной области.
git revert — отменить указанный коммит.
git rm — удалить файлы из промежуточной области и рабочего каталога.
git mv — перемещать или переименовывать файлы.
git show — показать детали коммита.
git config — настроить параметры для Git.
git config log.date iso8601 — изменить отображение времени git log текущего склада
git config --global log.date iso8601 — изменить отображение времени глобального журнала git
git grep — Поиск в репозитории по указанному шаблону.
git bisect — найти коммиты, которые приводят к ошибкам в бинарном поиске.
git submodule — управление подмодулями в репозиториях Git.
git clone --bare xxx/ — упаковать git-склад в xxx.git
git clone xxx.git — извлечение