Skip to content

Instantly share code, notes, and snippets.

@kulikov
Last active August 16, 2022 17:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kulikov/1226227 to your computer and use it in GitHub Desktop.
Save kulikov/1226227 to your computer and use it in GitHub Desktop.
Bash tips & tricks
# search and replace in files
$ sed -i 's/old-word/new-word/g' *.txt
# зайти в каждую директорию и обновить ее до указанного бранча
$ for f in *; do hg up megaplan-release-101 --cwd $f; done
# Скопировать ssh ключ на сервер
function sshid() { cat ~/.ssh/id_rsa.pub | ssh $1 "cat - >> ~/.ssh/authorized_keys.test"; }
# ssh-copy-id -i /home/kulikov/.ssh/id_rsa.pub price1@10.0.0.100 — делается на компьютере-клиенте
# Найти и удалить все файлы размером менее 1кб
$ find /dir/ -size 1k -exec rm {} \;
# размер директории
$ du -sh /tmp
# сохранить в vim от рута
:w !sudo tee %
# Поиск файлов по содержимому
$ grep -rl ’sample text’ /path_to_folder/
# Определение размера каталога Размер каталога
$ du -hc /path_to_folder/
# Удаление файлов в каталоге по маске
$ ls -R -a /path_to_folder/*.txt | grep ~$ | xargs rm -f
# Список файлов, используемых процессами Apache
$ lsof | grep httpd
# удалить рекурсивно все папки .svn
$ find ./ -iname .svn -exec rm -rf {} \;
# Помечает все конфликтные файлы resolved
$ svn st | grep '^C' | sed 's/^\C //' | sed 's/\+//' | xargs svn resolved $1
# Добавляем все новые файлы в репозиторий
$ svn st | grep '^\?' | sed 's/^\? //' | sed 's/\+//' | xargs svn add $1
# множественное переименование файлов
$ for f in *.jpg; do mv $f "bi-stand-$f"; done
$ for f in *.jpg; do mv $f "${f%.jpg}_70x70.jpg"; done # по маске
# To convert a set of files to UTF-8 in the terminal, you can run something like this:
$ for f in *.txt; do iconv -f mac -t utf-8 "$f" >"$f.utf8"; done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment