linux полезные команды


// перенос с удаленного сервера на локальный (pull) recursive, verbose, compress, human readable, archive mode, progress
// В rsync слеш на конце имеет значение - будет выгружено содержимое директории.
rsync -vrzhaP man@site.ru:www/sitedir/site.ru site.local
// тоже самое scp
scp user@site.ru:www/sitedir/site.ru site.local
// скачать пропуская существующие файлы, и исключить директорию upload, cache
rsync --ignore-existing --exclude "upload" --exclude "cache"
// если нет ssh, есть ftp. Закачать с локального на удаленный (ключ -R)
lftp -e 'mirror -R local/ /home/user/remote/ ' -u user,PassWorD dev10.ru
// скачать с удаленного на локальный
lftp -e 'mirror  remote/ local/ ' -u user,PassWorD dev10.ru
//  скачать/закачать исключая некоторые директории, а также пропуская уже существующие
mirror --only-newer --exclude "upload/" --exclude "bitrix/cache/"
// монтировать фтп сервер как локальный для манипуляции с файлами
curlftpfs ftp.server.ru /mnt/ftp/ -o user=username:password

// поиск в файле 
grep 'string' path/to/file/file.txt 
// поиск в директории 
grep -r 'string' dir 
//поиск с подсчетом строк 
grep -oni 'string' file.txt | wc -l 
// копирование, перемещение 
cp -r my/dir new/dir mv old/dir new/dir 
// символическая ссылка 
ln -s /path/to/link link_name 
// быстро заменить в файле строку 
sed -i 's/string/new_string/g' file.txt 
// удалить всю строку содержащую текст 
sed -i '/some string/d' file.txt 
// bitrix поиск измененных файлов за 22-е число, исключая папки кеша 
find . -type f ! -path "*/cache/*" ! -path "*/managed_cache*" ! -path "*/upload/*" ! -path "*/html_pages/*" -ls |grep 'мая 22' > may22_bez_cache.log 
// дамп БД с сжатием 
mysqldump -u user -pupasswd my-database | gzip > one.sql.gz 
// импорт сжатой бд 
gunzip < myfile.sql.gz | mysql -u root -p 
mydb zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database 
// быстро просмотреть строки от n - m 
sed -n '500,505p;' backup.sql 
// просмотр архива 
tar -tf archive.tar.gz 
// сортировка вывода по 5 колонке 
ls -la | sort -k 5 
// вывод прогресса с помощью pv , tee 
unzip -q upload.zip | pv -l > /dev/null 
// быстро закачать файл по протоколу webdav 
curl -T backup.tar -umyname:mypass https://webdav.yandex.ru/dir | tee /dev/null 
// поделить файл на части и вывести n-й столбец. awk по сути это split. 
awk -Fuser '{print $2}' /var/log/auth.log 
// вывести имена файлов в столбик, без атрибутов
ls -1 admin_*
// распаковать конкретную папку 
unzip archive.zip /path/need/extract 
tar -xzf archive.tar.gz /path/need/extract 
// распаковать в конкретную папку (ключ -C) 
tar -xzf archive.tar.gz -С /path/to/ /path/need/extract 
// вывести 5 самых крупных директорий 
du -h some/dir/path | sort -nr | head -n 5 


// быстро создать несколько файлов
array=(header.php footer.php styles.css template_styles.css description.php);for i in ${array[@]};do touch $i;done;
// битрикс бэкап
cat *.tar.gz* >> mysite_backup.tar.gz
// рекурсивно заменить строки. ключ -l выводит совпадения списком
grep -rl oldtext . | xargs sed -i -e 's/oldtext/newtext/g'
// сжать картинки формата png
for i in some/dir/*.png; do optipng  -p "$i" ; done;
// сжать картинки формата jpg 
for i in some/dir/*.jpg; do jpegoptim -p "$i" ; done; 

// убить процессы 1 дневной давности
killall -o 1d php

Leave a comment

Your email address will not be published.


*