[Из песочницы] 10 мини-лайфхаков в Bash

1. Чтобы быстро скопировать/переименовать файл с длинным именем, можно набрать:
cp /home/user1/myfile123456789.txt{,-new}

и обратно:
cp /home/user1/myfile123456789.txt{-new,}

2. Бесполезная, но прикольная форк-бомба (правда, не сработает, если у Вас задан ulimit для количества процессов):
:(){ :|:& };:

3. Эмулятор сетевого принтера на локальном компьютере:
nc -l -p 9100 > job.prn

4. Простейшее нагрузочное тестирование веб-сайта:
for i in {1..1000}; do echo ya.ru; done | xargs -P 20 wget &>/dev/null

5. Удобочитаемый вывод команды mount:
mount | column -t

6. SSH туннель с локального порта 7777 на удаленный порт 8888 на сервере myserver.com:
ssh -fN user@myserver.com -L 7777:myserver.com:8888

7. Вывести случайное число от 0 до 32767:
echo $RANDOM

8. Выполнить в консоли команды из текстового файла:
source ./commands.txt

9. Создать случайный пароль:
openssl rand -base64 8

10. Защита от одновременного запуска нескольких копий скрипта:
flock -n /tmp/lock.txt -c "/home/user1/test.sh > test.log"

На этом пока все, удачных экспериментов в командной строке!

Комментарии (3)

  • 23 апреля 2017 в 22:44

    +1

    И это что, статья? Надо хотя бы объяснять, что значат какие параметры. А то какой-то бессистемный набор «заклинаний» получается.
    • 23 апреля 2017 в 22:49

      +2

      Согласен — «делай так и будет щастье!!!111» никогда не нравилось. Даже если находил такие решения — приходилось по ним гуглить/манить/доки читать. А то так недалеко и rm -rf скопипастить от какого-нибудь приколиста.
  • 23 апреля 2017 в 23:00

    0

    Слово «лайфхак» в названии понижает уровень материала на 3 порядка.

© Habrahabr.ru