IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Пингвинятник (ОС *NIX) (http://www.imho.ws/forumdisplay.php?f=76)
-   -   tips'n'tricks (http://www.imho.ws/showthread.php?t=30083)

Bek 20.05.2003 16:07

tips'n'tricks
 
Постим тут всякие полезности маленькие.

Вот например - изменяем права доступа на все файлы и папки. Файл - чтение запись. Каталог - выполнение.

find ./ -type f -exec chmod 644 {} \;
find ./ -type d -exec chmod 755 {} \;

L0uD 03.06.2003 01:33

перевод имен файлов в директории в нижний регистр

for x in*; do mv $x 'echo $x|tr[A-Z][a-z]';done

создание сразу нескольких директорий

mkdir -p dir1/dir2/dir3

случайные пароли

head -c8 /dev/random|uuencode -m-|sed -n '2s/=*$//;2p'

il_elec 23.07.2003 03:23

Сколько времени вам потребуется, чтобы набрать имя уже существующего файла?

This_Is_VeRy_long_file_name_7523854_q.txt

Подождите! В оболочке bash все это название можно набрать за доли секунды (скажем, для использования в программе cat):

$ cat This

А потом нажмите клавишу табуляции:

$ cat This_Is_VeRy_long_file_name_7523854_q.txt

Вот так!
--------------------------------
На экран что-то вывелось и вы не успели прочитать? Для MS DOS это фатально. В Linux можно увидеть пару-тройку уплывших экранов: клавиши SHIFT-PageUp/PageDown вам помогут!
--------------------------------
Сильно сокращает работу на клавиатуре и следующий прием. Предположим, вы часто выполняете некоторую длинную команду, предположим:

# uucico -r1 -d9 -Sremotesys

Если вы уверены, что совсем недавно вызывали эту команду и вам он опять нужна, можно просто набрать:

# !uuc

Все остальное машина домыслит.
Вообще же говоря, стоит внимательно работать с этой возможностью.

noname 01.12.2003 14:32

как записать фаил на ftp server не вводя каждый раз user pass
#!/bin/sh
ftp -n <<EOF
open 192.168.1.1
user sasha pq
put nmap.tar.bz2
quit
EOF

; man ftp

а с этим надо быть осторожным.

find [dir] -type f -atime +n -exec rm {} \ ;

-atime n File was last accessed n*24 hours ago.
+n for greater than n,
man find.

как перевести man в удобочитаеиый вид:
man "manpage" | col -b > "file"
man tar |col -b > man_tar

Удаление лишних символов фаилов dos windows
$ tr -d "\015" < /tmp/file.dos > /tmp/file.unix

Экранирование " ' " кавычки в шелле :
$ echo -e '\047'

2 Bek IMHO Действительно важная тема.

понадобился мне генератор паролей , и вот что вышло
head -c 6 &lt;/dev/random|md5sum|echo `head -c 8`

Doctorrr 11.12.2003 13:40

Re: tips'n'tricks
 
Цитата:

Первоначальное сообщение от Bek

Вот например - изменяем права доступа на все файлы и папки. Файл - чтение запись. Каталог - выполнение.

find ./ -type f -exec chmod 644 {} \;
find ./ -type d -exec chmod 755 {} \;

Оч. хороший совет, но он справедлив только для старых версий chmod'a.
Все крупные дистрибутивы линукса и BSD уже включают в себя алисасы с большими буквами:

chmod +x * - всем
chmod +X * -только для директорий

Другая версия того что ты описал:
# find . -type f -print0 | xargs -0 chmod 644
# find . -type d -print0 | xargs -0 chmod 755

filonovd 21.03.2004 22:17

Цитата:

Первоначальное сообщение от il_elec
--------------------------------
На экран что-то вывелось и вы не успели прочитать? Для MS DOS это фатально. В Linux можно увидеть пару-тройку уплывших экранов: клавиши SHIFT-PageUp/PageDown вам помогут!
Поставили FreeBSD, a там такое не работает? Не отчаивайтесь. Включите Scroll Lock и листайте PageUp/PageDown (без shift).

noname 25.03.2004 11:46

Как можно сделать копию всех файлов и каталогов?
Кроме использования файлового менеджера (например mc) - используйте следующие команды. Все они делают копию текущего каталога (".") и все подкаталоги туда куда вы скажете:

* cp -Rpv . /some/destdir
Недостаток: возникают ошибки при работе со специальными файлами, такими например как /dev
* find . -print | cpio -dump -V /some/destdir
Недостаток: нет.
Также вы можете копировать ссылки на каталоги включая их содержимое:
find . -follow -print | cpio -dump -V /some/destdir
Чтобы исключить копирование файлов, оканчивающихся на ".bak" используйте egrep в качестве фильтра:
find . -follow -print | egrep -v "\.bak$" | cpio -dump -V /some/destdir
* tar -cvf /tmp/t.tar .
cd /some/destdir
tar -xvf /tmp/t.tar
rm /tmp/t.tar
Недостаток: создается временный файл.

Все перечисленные команды пытаются сохранить права доступа и владельцев где это возможно. И только пользователь root способен создавать копии каталогов, где находятся файлы, принадлежащие разным пользователям.

Drakosha 25.03.2004 13:41

тут много:
http://linux.su/adv.shtml

на gentoo.org в каждом выпуске newsletter

filonovd 25.03.2004 17:25

Цитата:

Первоначальное сообщение от noname

* tar -cvf /tmp/t.tar .
cd /some/destdir
tar -xvf /tmp/t.tar
rm /tmp/t.tar
Недостаток: создается временный файл.


И то-же самое без недостатка:

tar -cf - . | (cd /dom/destdir ; tar -xvf -)

Pink_Punk 07.04.2004 22:16

Места у меня мало и я Линукс обычно в 2,5Гб ставлю,конечно приходится кучу библиотек потом ставить.И вот,чтобы не рыскать каждый раз по дискам,в поисках пакета,я делаю 3 листа,а потом скрипт findrpm,который мне говорит,какой пакет на каком диске лежит..
---
//Список пакетов с диска://
ls > asp1.lst
//для остальных дисков так-же//
//скрипт поиска//
#!/bin/bash
LISTPATH=/home/pinkpunk/bin
echo "********** Disk ASP1 **********"
cat $LISTPATH/asp1.lst | grep $1
echo "********** Disk ASP2 **********"
cat $LISTPATH/asp2.lst | grep $1
echo "********** Disk ASP3 **********"
cat $LISTPATH/asp3.lst | grep $1
echo "****************************"
//пути и листы свои подствите///

gonzalez 24.12.2004 15:51

Цитата:

Сообщение от SunGlint
Трям Люди. А может кто знает как в RH9. Поставить TTL не 64 а 256 ???

А если попробывать
echo 256 > /proc/sys/net/ipv4/ip_default_ttl

Lemegeton 23.04.2005 19:18

Маленькая полезность, да простят меня модераторы.
При работе с ХFree (и всеми надстройками а-ля KDE, GNOME...), Вы, наверняка, сталкивались с ситуацией, когда из консоли необходимо вызвать программу, работающую с итерфейсом XFree. Но при ее запуске консоль "блокируется" (а при нажатии Ctrl+C приложение, вызванное с консоли, закрывается). Так вот, чтобы спокойно продолжить работу в консоли после запуска программы, можно в конце командной строки поставить знак "&". Например:

# konqueror &

Эта команда вызовет браузер konqueror в фоновом режиме и работа в текущей консоли будет продолжена.

muzman 27.05.2005 01:43

Добавлю от себя: ещё можно использовать nohup konqueror 2>&1 > /dev/null&

chigi 01.10.2005 21:46

Цитата:

il_elec:
На экран что-то вывелось и вы не успели прочитать? Для MS DOS это фатально. В Linux можно увидеть пару-тройку уплывших экранов: клавиши SHIFT-PageUp/PageDown вам помогут!
На FreeBSD и помоему на всех *BSD тоже самое проделовается путем нажатия ScrollLock.

Для определения маршрутизации почты поможет команда "sendmail -bv -d0.1 <email>"

Drakosha 17.01.2006 15:49

тут много интересного: rusmafia.org/linux

Tixe 24.02.2006 03:33

Tovarishi !!! Pomogite!!!! KATASTROFA!!!!

xotelos izmenit fotografiyu virezal 4ast i ne4ayanno najalos "save''

rezultat ostalsya kusok ot fotki pod starim imenem

4to mne delat?!?!

V korzinke fotki net smotrel poka komp ne zakrit ee mojno vosstonovit

o4en proshu podskajite!!!!

Tovarishi !!! Pomogite!!!! KATASTROFA!!!!

xotelos izmenit fotografiyu virezal 4ast i ne4ayanno najalos "save''

rezultat ostalsya kusok ot fotki pod starim imenem

4to mne delat?!?!

V korzinke fotki net smotrel poka komp ne zakrit ee mojno vosstonovit

o4en proshu podskajite!!!!

aivs 24.02.2006 12:53

попробуй ctrl+z
отмени действие

Андрюха 21.04.2007 14:44

Поставил Mandriva 2007.
Используется три раскладки клавиатуры : русская, белорусская и английская. Переключение клавишами не работает, несмотря на попытки настроить через графический интерфес.

Попробовал добавить строки:
Option "XkbLayout" "us,ru,by"
Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
в Section "InputDevice" xorg.conf .

Может кто подскажет как и где это можно настроить, а то мышкой не всегда удобно.

Wizard_1024 09.07.2007 13:45

wget
 
Полезная фишка, если требуется поставить на сервере закачку.
nohup wget --load-cookies <file with cookies> -i <fail with links> -c &

Либо воспользоваться командой at:
at 22:00
Последует ввод:
wget <link>
Ctrl+z

kasha 10.04.2008 19:31

подскажите, а сущ-ет ли команда , которая выводит свойства ПС на экран(размер ж.диска, состояние ОЗУ и т.п.? В виндоусе равноценна my_comp > properties например?
спасибо

Drakosha 10.04.2008 19:59

размер дисков:
df -h

память + cpu:
top
cat /proc/cpuinfo

noname 11.04.2008 16:31

lshw

mashler 29.05.2008 15:28

Наткнулся сегодня на статью про блокировоки попыток подбора паролей на unix машине.
Fail2ban блокирует злоумышленников через iptables
http://beshenov.ru/debaday/200704.html

noname 20.06.2008 14:00

как последовательно установить один и тот-же софт на N одинакрвых машин

for x in 1 2 3 4 5 ; do echo "hostname-$x:" ; ssh -o ConnectTimeout=1 root@hostname-$x aptitude install -y apbs ; done

noname 23.10.2008 18:56

подсчитать кол-во имзмененых файлоы в базе за последние 24 часа , result в G.

find /var/lib/mysql/ -type f -mtime 0 -print | xargs ls -l | awk '{sum=sum+$5}END{print sum/(1024*1024*1024)}'

charon 05.04.2009 15:47

Добавление календаря на обои:
Цитата:

convert -font -cronyx-fixed-bold-r-normal--16-120-100-100-c-80-koi8-r -fill black -draw "text 70,60 \" `cal -m|iconv -f utf8 -t koi8-r` \"" lake-placid.jpg lake-placid2.jpg
Внимание: требуется установленный пакет ImageMagick

Araglin 17.05.2009 14:56

если используете плеер Quod Libet, то вот скрипт для генерации строки now playing (например, для жж-клиента logjam хорошо работает)

#!/bin/bash
CURRENT=${HOME}/.quodlibet/current
if test -e ${CURRENT}; then
TITLE= cat ${CURRENT} | grep title | \
sed s/"title="/"NP: "/
echo "${TITLE}";
else
echo "NP: silence ";
fi

Bujhm666 14.06.2009 20:57

Перекодировка текста

iconv -f <from_encoding> -t <to_encoding>

Также можно посмотреть список поддерживаемых кодировок:

iconv -l

Outloader 15.01.2014 14:32

Есть такая утилитка rsync. Те, кто занимается резервным копированием знают. Можно работать как локально так и по сети. Масса возможностей и настроек.

Но как избавиться от полного дерева папок каждый раз при копировании какого-нибудь глубоко зарытого файла? Есть решение:

rsync -vru --include='*/' --include='*.mask' --exclude='*' /path/to/your/folder/ /path/to/backup/

В данном случае, в папку backup будут помещаться только файлы с расширением mask из папки folder.

В свое время, для меня было довольно нетривиально подобрать комбинацию include/exclude масок.


Часовой пояс GMT +4, время: 16:48.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.