Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » UNIX » UNIX Shell: sh, bash, zsh; Coreutils и ко.; sed, awk, perl;

Модерирует : ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154

Открыть новую тему     Написать ответ в эту тему

digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Товарищи вопрошающие! Если ваша система отлична от ГНУ, и в то же время вы желаете обойтись только дефолтными средствами, указывайте и то и другое сразу, пожалуйста.


UNIX Shell

 
   Это глобальная тема по юниксовой командной оболочке, как по интерактивной работе в командной строке, так и по шелл-скриптам. Ключевые слова: sh, bash, zsh, tcsh, busybox, readline, coreutils, cp, mv, ln, rm, ls, readlink, mkdir, touch, stat, date, test, sleep, chown, chmod, chattr, dd, df, du, env, echo, cat, less, man, grep, sort, findutils, find, locate, xargs, md5sum, cmp, diff, patch, ps, kill, killall, tar, gzip, bzip2, xz, mount, fdisk, parted, mkfs, fsck, e2fsprogs, mtools, ss, netcat, netstat, rsync, ssh, scp, sftp, lftp, ncftp, time, strace.
   Неинтерактивная обработка текста (sed, awk, perl) пока тоже здесь.
   Смотри в других ветках: wget, convert, montage, mogrify и др., gs, git, 7z, p7zip, soffice, mplayer, mencoder, vlc, vim, mc, mcedit, kioclient.
 
 

Hint! Русские маны (подустаревшие, не всегда полные и не всегда для вашей системы) можно попытаться найти на Опеннете, к примеру: bash, tar, grep.

 
Готовые решения:
  • commandlinefu.com
    Крупнейшая база полезных однострочников на командной оболочке с ранжированием на основе пользовательского голосования.
     
  • shell-fu.org
    Аналогично, но поменьше и формат записей более свободный, поэтому встречаются и однострочники, и развернутые скрипты, и просто советы.
     
  • Useful one-line scripts for sed
    Почти исчерпывающий список решений для тех случаев, когда sed незаменим. Более сложные скрипты с sed.sf.net — только для тех, кто знает толк... :)

 
Учебная литература:
  • Greg’s Wiki (http://mywiki.wooledge.org)
    Наиболее обширный авторский сборник постоянно обновляющихся материалов по Башу.

    1. Bash Pitfalls
      (Частые ошибки программирования на Баше: [1], [2], [3], [4], [5] — пер. на русский по сост. на дек. 2008 г.).
      Рассмотрены преимущественно ошибки, возникающие из-за непонимания отличия шелла от «нормальных» скриптовых языков. Если вы уже владеете, например, Перлом, то это вполне может быть ваше первое руководство для ознакомления с Башем.
    2. Bash FAQ
    3. Bash Guide
    4. Bash Reference Sheet
      Шпаргалка по частым синтаксическим оборотам.

 
Классическая учебная литература:
С одной стороны не упомянуть эти издания нельзя, с другой — они настолько устарели, что едва ли их можно рекомендовать в роли учебника.

 

Смело правьте и дополняйте шапку, однако не забывайте отписываться об исправлениях и сохранять исходный вариант под #.
Первый пост темы имел вид...

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 18:51 16-05-2008 | Исправлено: qw12, 09:42 24-03-2020
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
в таком варианте mail будет работать только если данный сервер настроен соответственно как почтовый сервер.
 
p.s. да можно было бы и заранее предупреждать, просто вместо 0 написать нужное количество секунд и не париться.

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 17:27 19-08-2013
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
не знаю, в нужную ли тему пишу, или есть более правильная,  
ну да попробую.
Вопрос по сути простой:
надо по крону заходить другой сервер по ssh, и, изобразив там пару минут случайных действий, выйти.  
По входу и выходу вопросов нет, а вот как изобразить случайные действия? например, простой листинг без определенного порядка, т.е. рандомный? так, чтобы в логах сессии выглядели бы не близнецами, тупо с одинаковым набором команд, а все время разными?  
Спасибо.

Всего записей: 2155 | Зарегистр. 18-06-2006 | Отправлено: 20:03 12-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Weinaum
А кто у вас там пишет логи? Не в смысле «какой человек», а какой механизм?
 
P. S. Ну и если вы поясните, зачем это все нужно, то будет вообще замечательно.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 20:51 12-09-2013 | Исправлено: ASE_DAG, 21:06 12-09-2013
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А кто у вас там пишет логи? Не в смысле «какой человек», а какой механизм?
 
P. S. Ну и если вы поясните, зачем это все нужно, то будет вообще замечательно.
 

У меня в логах все нормально, а нужно в принципе только в целях эксперимента и вот зачем.
Есть vps халявный, который я себе заточил под конкретные нужды, и в принципе все что мне надо там работает в автономном режиме, и я туда неделями не хожу.
Но тут выясняется, что хозяева просят активность root, не реже раза в сутки. Ну и я тут ничего другого не придумал, как создал простейший скрипт, по которому раз в день захожу по ssh, делаю пару движений, потом после небольшой паузы выхожу.
Но поскольку не знаю, как они там мониторят активность на своих виртуальных машинах, подумал о том, чтобы добавить в скрипт что то такое, чтобы имитировать случайные действия, или что то в этом роде, чтобы при этом не нанести вреда самой системе )))).
Вот как то так, да, ос debian 6.0, виртуализация вроде openvz, нужды мои абсолютно безвредные и нужны только мне.

Всего записей: 2155 | Зарегистр. 18-06-2006 | Отправлено: 23:26 12-09-2013 | Исправлено: Weinaum, 23:27 12-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Weinaum
> как они там мониторят активность
Да дело в том, что я вот так навскидку не назову ни одного механизма, которым можно логировать команды, которые отдает пользователь. При условии, разумеется, что он сам не оставляет их в .bash_history и т. п. местах.
 
> просят активность root, не реже раза в сутки
Я бы на вашем месте сделал самоочевидную вещь — раз в сутки все бэкапил. Вполне себе естественная активность и случайности никакой не требуется.
 
> Есть vps халявный
А ежели не секрет: он для всех халавный или это только вам такая радость перепала?


----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 23:33 12-09-2013 | Исправлено: ASE_DAG, 23:35 12-09-2013
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ASE_DAG
А в принципе да, что то я действительно такую самоочевидную вещь не увидел ))

Цитата:
А ежели не секрет: он для всех халавный или это только вам такая радость перепала?

да какой секрет, в данном случае речь о vps.me - http://www.vps.me/free-vps
машинка конечно не ахти мягко говоря, но я в общем-то чисто в виде опытов, как говорится, что лежит, может в хозяйстве и сгодится.  
А так есть еще http://www.host1free.com/vps-registration/, еще на кодинге можно использовать - но там вм отключается после 15 минут неактивности в системе.
Ну и самый нормальный на мой взгляд вариант всем известный от амазона...вроде еще где-то бывает, но все-таки это для данной темы сильно оф...еще раз снкс за простую подсказку )))

Всего записей: 2155 | Зарегистр. 18-06-2006 | Отправлено: 01:07 13-09-2013 | Исправлено: Weinaum, 01:09 13-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Weinaum
> в данном случае речь о vps.me
> хозяева просят активность root, не реже раза в сутки
 
Хм. А на http://www.vps.me/free-vps у них сказано, что раз в месяц. Врут?

Цитата:
Our goal is to provide free VPS for everyone who uses it actively, so you should login to your server or to our control panel at least every 30 days.


----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 19:42 13-09-2013 | Исправлено: ASE_DAG, 19:42 13-09-2013
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ASE_DAG
да не трогали, в том то и дело, а тут вдруг такие письма от них получаю:

Цитата:
Your Free VPS (site.com) which was activated at Saturday, 20 July 2013 is now SUSPENDED due to reason:
 
Root user has never logged in to VPS during 24 hours!

 

Всего записей: 2155 | Зарегистр. 18-06-2006 | Отправлено: 01:37 14-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Подскажите, как в gawk обработать 2 строку txt файла, чтобы из всей строки выделить значение с датой ?
2. Конструкция ниже выводит значение времени, как от него отнять 10 минут ?
{ if (NR == 5)
print $3 }

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 08:44 14-09-2013 | Исправлено: digital422, 10:35 14-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
digital422
1. Только явно перечислив все возможные форматы даты.
2. Проще всего будет воспользоваться утилитой date(1).

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 17:28 14-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Формат даты - 14.09.2013 (число, месяц, год, через точку). Сделал через gsub, но наоборот, дата убирается, а текст остается, как сделать наоборот?
2. Исходник csv, можно ли date запускать в gawk скрипте ?

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 18:49 14-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
digital422
1. match()
2. command | getline [var]

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 19:09 14-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Попробую.
2. date не подходит, текст времени фиксированный, например 10:05, из него надо отнять время, например 5 минут, должно получиться 10:00 или см. 3 вопрос.
3. В итоге должно получится 2456551.0000000000. 2456551 - это дата 15/09/2013, 0000000000 - это время 00:00:00:00 (0062500001 - 00:09:00:00). В каком это формате и как через gawk скрипт получать такие значения из нормальных единиц времени и даты ? Из временного значения надо получить время за минусом нескольких минут назад, вопрос 2.

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 20:21 14-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2. Не понял. Не фиксированный, вы хотели сказать? Ну ежу понятно, что нет.
$ gawk -f - <<_EOF
BEGIN {
    time="10:05"
    "date -d '-5min " time "'" | getline newtime
    print newtime
}
_EOF

 
Sat Sep 14 10:00:00 MSK 2013
 
3. date [OPTION]... [+FORMAT]

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 20:50 14-09-2013 | Исправлено: ASE_DAG, 20:52 14-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2. Вот так сделал, работает, отнимает время от $3.
{if (NR == 5)
{ t=$3
     time=t
     "date '+%H:%M' -d '-5min " time "'" | getline newtime
     print newtime
 }
 }

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 21:21 14-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
> t=$3
> time=t
 
t=$3
ti=t
tim=ti
time=tim

 
:-D
 
Добавлено:
В порядке повышения связности дописал в шапку следующее: «Смотри в других ветках: wget, convert, montage, mogrify и др., git, 7z, p7zip, soffice, mplayer, mencoder, vlc, vim, mc, mcedit

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 21:25 14-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2. Можно оказывается и так сделать:
system("date +%H:%M -d '-5 min "time"'")
 
3. Не могу понять, что за значения даты - 2456551 (15/09/2013) и времени - 0062500001 (10:00:00:00) , это не миллисекунды ( data +%s).

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 22:47 14-09-2013
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
digital422
2.
> system("date +%H:%M -d '-5 min "time"'")
И что вам это даст?
 
3. Я тоже. Обратитесь к документации.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 22:54 14-09-2013
albel



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
digital422
http://www.funaba.org/en/calendar-conversion.cgi?date=2013-09-15&i=gregorian&o=all
 

Цитата:
2456551 (15/09/2013)

chronological Julian day number (JD)

Всего записей: 11003 | Зарегистр. 30-08-2002 | Отправлено: 04:25 15-09-2013
digital422

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
albel - Спасибо за информацию, теперь надо думать, как сделать преобразование используя gawk.

Всего записей: 360 | Зарегистр. 19-04-2003 | Отправлено: 20:24 18-09-2013 | Исправлено: digital422, 20:24 18-09-2013
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154

Компьютерный форум Ru.Board » Операционные системы » UNIX » UNIX Shell: sh, bash, zsh; Coreutils и ко.; sed, awk, perl;


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru