Faq
Различия
Здесь показаны различия между двумя версиями данной страницы.
faq [26.06.2017 14:05] admin |
faq [20.05.2019 15:18] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | <code> | ||
- | ppp ee | ||
- | \\ p | ||
- | pp | ||
- | \ | ||
- | \ee | ||
- | \\ | ||
- | ee | ||
- | \\ | ||
- | # заменить во всех файлах по маске шаблону текст ###find ###sed | ||
- | find . -type f -name '*.css' -exec sed -i 's/http:/https:/g' {} \; | ||
- | |||
- | # кто использует swap ###swap ###freemem #smem | ||
- | smem -kts swap | ||
- | |||
- | # создание carbon скрипта для hardbash ###bash ###init | ||
- | #!/bin/bash | ||
- | set -eu | ||
- | . /opt/crab/crab_utils/bin/::carbon.sys | ||
- | # | ||
- | exit 0 | ||
- | |||
- | # создание простого скрипта для hardbash ###bash ###init | ||
- | #!/bin/bash | ||
- | set -euEo pipefail | ||
- | echo "$0 $@ [$$] START">&2 | ||
- | # | ||
- | echo "$0 $@ [$$] SUCCESS">&2 | ||
- | exit 0 | ||
- | |||
- | # перевод из unixtime в стандартную дату ###bash ###unixtime ###date | ||
- | date -d "1970-01-01 UTC 1458515485 sec" +%Y-%m-%d | ||
- | |||
- | # форматированный вывод ###bash ###string | ||
- | printf "%-7s %-7s %-11s %-12s %-10s %-8s %-11s %s" "vz: $vz_count" "kvm: $kvm_count" "mem: ${freemem}M" "space: ${freespace}G" "load: $loadavg" "hit: ${hit}%" "skip: ${skip}K" | ||
- | |||
- | # взять слева с нулевого символа 3 символа ###substring ###bash ###string | ||
- | str=123456789; echo ${str:0:3} = 123 | ||
- | |||
- | # взять справа от -4 символа 3 символа. Внимание! пробел перед " -4" обязателен ###substring ###bash ###string | ||
- | echo ${a: -4:3} = 678 | ||
- | |||
- | # Взять левую часть стоки. Обрезать строку справа до первых букв www ###substring ###bash ###string | ||
- | str='1234 123 www www www asd zxc' | ||
- | echo ${str%www*} = 1234 123 www www | ||
- | # Взять левую часть стоки. Обрезать строку справа до последних букв www | ||
- | echo ${str%%www*} = 1234 123 | ||
- | |||
- | # Взять правую часть стоки. Обрезать строку слева до первых букв www ###substring ###bash ###string | ||
- | str='1234 123 www www www asd zxc' | ||
- | echo ${str#*www} = www www asd zxc | ||
- | # Взять правую часть стоки. Обрезать строку слева до последних букв www | ||
- | echo ${str##*www} = asd zxc | ||
- | |||
- | # заменить переводы строк на пробелы ###bash ###string ###strreplace | ||
- | a="${a//$'\n'/ }" | ||
- | |||
- | # Удалить все файлы кроме 10 последних по дате модификации, полезно для бекапов и логов ###bash ###script | ||
- | [ `ls -1 | wc -l` -gt 10 ] && ls -1t | tail -n +10 | xargs -x /bin/echo rm | ||
- | |||
- | # Удалить все файлы кроме 10 последних по имени файла вида 09.07.15_15-40.sql.bz2, полезно для бекапов и логов ###bash ###script | ||
- | [ `ls -1 | wc -l` -gt 10 ] && ls -1 | sort | head -n 2 | xargs -x /bin/echo rm | ||
- | |||
- | # Удобный bash history ###bash ###bashrc ###history | ||
- | cat $HOME/.bashrc | ||
- | export HISTSIZE=10000 | ||
- | export HISTCONTROL="ignoreboth" | ||
- | shopt -s histappend | ||
- | shopt -s cmdhist | ||
- | export HISTTIMEFORMAT="%F %T " | ||
- | function prompt_cmd(){ | ||
- | history -a &>/dev/null; | ||
- | if ! tail -n 1 ~/.bash_history | grep -qm1 "${SSH_CLIENT *}"; then | ||
- | echo -e "#$(date +%s)\n ${SSH_CLIENT *}">>~/.bash_history; | ||
- | fi | ||
- | } | ||
- | PROMPT_COMMAND=prompt_cmd | ||
- | |||
- | # Пример удобного логирования ###bash ###log | ||
- | echo "$(date +'%Y-%m-%d %H:%M:%S') $HOSTNAME ${0##*/}[$$]: $@" | ||
- | |||
- | # Заменить во всех файлах слова ###sed | ||
- | sed -i 's/что_менять/на_что_менять/' /path/to/files/* | ||
- | |||
- | # напечатать, то что находится в скобке ###sed | ||
- | sed -n 's/.*href="/([^"]*\).*/\1/p' ) | ||
- | |||
- | ###find | ||
- | find /var/www/ -name "*.conf" | ||
- | |||
- | # Поиск без учёта регистра: ###find ###case | ||
- | find /var/www/ -iname file.conf | ||
- | |||
- | # Поиск по размеру файлов ###find ###size | ||
- | # size = 1024 bytes | ||
- | find /home/user -size 1024c | ||
- | # | ||
- | # size> 10Mb | ||
- | find /home/user -size +10M | ||
- | |||
- | # Поиск по маске прав ###find ###perm | ||
- | find ./ -perm 700 | ||
- | |||
- | # Поиск по дате ###find ###date ###time | ||
- | # Файлы созданные или изменённые в течении последних 5 дней | ||
- | # find /home/user -type f -mtime -5 | ||
- | # | ||
- | # Файлы созданные или изменённые в течении последних 5 минут | ||
- | # find /home/user -type f -mmin -5 | ||
- | # | ||
- | # Найти файлы созданные или изменённые старше 30 дней (ака поиск устаревших файлов): | ||
- | # find /home/user -type f -mtime +30 | ||
- | |||
- | # Удалить файлы созданные или изменённые старше 30 дней: ###find ###delete | ||
- | find /home/user -type f -mtime +30 -delete | ||
- | |||
- | # поиск и запуск внешней программы ###find ###exec | ||
- | find ./ -type f -exec grep -i -H "STRING" {} \; | ||
- | |||
- | # Найти все файлы php в который встречается строка STRING: ###find ###grep | ||
- | find ./ -type f -name "*.php" -exec grep -i -H "STRING" {} \; | ||
- | |||
- | ###bash ###string | ||
- | ${name%%i*} | ||
- | ${str%%www*} | ||
- | </code> | ||
- | |||
- | **Как внести правки в страницу, если нет прав.** | ||
- | |||
- | Можно снизу в коммент написать, что исправить, либо в обсуждения.blog создать тему, либо если много, скопировать страницу в вики формате и вставить ее в черновики с исправлениями и потом через гид диф примем изменения. | ||
- | |||
- | **Что делать если слетела кодировка по fckedit** | ||
- | <code> | ||
- | # ÐзÑÑÑ Ð»ÐµÐ²ÑÑ ÑаÑÑÑ ÑÑоки. ÐбÑезаÑÑ ÑÑÑÐ¾ÐºÑ ÑÐ¿Ñ | ||
- | </code> | ||
- | |||
- | на самом деле она не слетела, просто кто то копипастом вставил спец символ, его нужно найти и удалить в режиме докувики | ||
- | |||