В этой публикации будут выводиться примеры команд консоли linux.
Посмотреть версию ядра linux:
1 |
uname -a |
Получить список дисков, установленных в системе:
1 |
fdisk -l |
Получить список файлов отредактированных за последние 30 дней в текущей директории (рекурсивно):
1 |
find . -type f -ctime -30 |
Заархивировать только файлы перечисленные в файле list.txt, каждый с новой строки:
1 |
tar -cvzf folder.tar.gz -T list.txt |
Скопировать папку a1 в папку b2:
1 |
cp -i -r a1 b2 |
Существующие файлы будут перезаписаны, а служебные с точкой в начале (.htaccess) не пропущены
Удалить рекурсивно все файлы Thumbs.db в текущей директории:
1 |
find -name Thumbs.db -delete |
Посчитать все файлы в текущей директтории рекурсивно
1 |
find . -type f|wc -l |
Тоже, но для директорий:
1 |
find . -type d|wc -l |
Восстановление БД postgresql из дампа
1 |
psql -f file_name.sql db_name user |
Посмотреть полный путь от корня в директории
1 |
pwd |
Получить версию установленной ОС:
1 |
cat /etc/*release* |
Просмотр всех запущенных портов:
1 |
netstat -napt |
Затаргизипить директорию в файл file.tar.gz
1 |
tar -czvf file.tar.gz /full/path |
Просмотр содержимого tar архива:
1 |
tar -tvf file.tar.gz |
Просмотр истории всех введенных команд:
1 |
history |
Создание архива files.zip из директории my_files
1 |
zip -r files.zip ./my_files |
Распаковка zip архива в текущий каталог:
1 |
unzip archive_name.zip |
Распаковка tar.gz или tar архива в текущий каталог:
1 |
tar -xf archive_name.tar.gz |
Распаковка rar архива в текущий каталог:
1 |
unrar x archive_name.rar |
Удаление директории рекурсивно:
1 |
rm -rf directory_name |
Замена содержимого файла данными из буфера обмена:
1 |
cat >file.name |
Комбинация для вствки текста в файл из буфера: (shift+insert – ctrl+c)
Склеивание нескольких файлов в один:
1 |
cat file1 file2 file3 > file |
Задание группы wwwrun
для каталога
1 |
chown wwwrun catalog |
Поиск файла или папки в каталоге /home (рекурсивно) в начале названия которых встречается строчка file_or_foldername
:
1 |
find /home -name "file_or_foldername*" |
Поиск сроки в файлах внутри каталога (рекурсивно):
1 |
grep -rl 'text' /path/ |
Создание жесткой ссылки (только на конкретный файл). В примере создается ссылка file.txt на file.info
1 |
ln /var/files/file.info /home/file.txt |
Создание символической ссылки (действует на каталоги и файлы). В примере создается ссылка files на каталог ftp
1 |
ln -s /srv/ftp /srv/www/files |
Регистрация автозапуска при старте системы для демона mysql (Для SUSE)
1 2 |
chkconfig --add mysql rcmysql start |
Вывод информации о дисковом пространстве
1 |
df -h |
Создание дампа базы PGSQL в один запрос (для php passthru())
1 2 3 4 |
PGPASSWORD=mypassword; export PGPASSWORD; pg_dump -i -h localhost -p 5432 -U username -F p -b -f "/path/dump.sql" mydbname; unset PGPASSWORD |
Копирование папки с ftp сервера в текущую директорию
1 |
wget -r ftp://user:pass@servername/directory/ |
Запустить виртуальную консоль (для фонового запуска программ):
1 |
screen -x |
Рекурсивное удаление всех папок и подпапок .svn из текущего каталога:
1 |
find . -name .svn -print0 | xargs -0 rm -rf |
Сначала находятся все каталоги с именем .svn, а затем происходит рекурсивное удаление содержимого этих каталогов.
Просмотр общего объема, занимаемого каталогом /var и всеми его подкаталогами первого уровня
1 |
du -shc /var/* |
Смена пароля пользователя:
1 |
passwd username |
Просмотреть зависимости для бинарного файла:
1 |
ldd ./binaryfile.bin |
Установить только время hh:mm
1 |
date --set hh:mm |
или посложнее:
1 |
date MMDDhhmmYYYY.ss |
где
- MM двухзначный номер месяца,
- DD двухзначный номер дня,
- hh часы в 24-часовом формате,
- mm минуты,
- YYYY 4 цифры года,
- ss секунды.
Создать пользователя и задать ему пароль:
1 2 |
root# adduser joan root# passwd joan |
Создать группу и добавить в нее пользователя:
1 2 |
root# groupadd webusers root# usermod -G webusers joan |
Расширенный функционал добавления пользователя:
1 |
useradd -m -g ftp -s /bin/bash -d /home/ftp -G users,wheel,audio,cdrom,games,usb klayman |
В данной команде параметр -m означает создать домашний каталог с именем совпадающим с именм пользоватея.
- Параметр -g указывает primary group которой принадлежит пользователь.
- Параметр -s указывает на шелл, как правило можно опускать.
- Параметр -d указывает на домашню директорию пользователя.
- Параметр -G означает добавить пользователя в качестве члена в группы, перечисленные после данного параметра. В данном случа мы добавляем его в группу стандартную для пользователей users, wheel – группа пользователей способных выполнять команду su.
- Остальные параметры означают возможность доступа к аудио устройствам, CD-ROM’у, играм и USB.
- Последний параметр как не трудно заметить – это имя нашего пользователя.
Получить список пользователей:
1 |
cat /etc/passwd |
Найти во всех файлах с расширением .php строку htmlspecialchars и земенить её на htmlspecialcharsEx:
1 |
find -type f -name \*.php -exec sed -i -r 's/htmlspecialchars\(/htmlspecialcharsEx\(/g' {} \; |
Отобразить MIME-type и кодировку файла:
1 |
file -i filename.txt |
Изменить кодировку файла:
1 |
iconv -f WINDOWS-1251 -t UTF-8 -o output_file.txt original_file.txt |