Pull to refresh

Comments 89

UFO landed and left these words here
осталось ещё придумать 350 запоминающихся алиасов для каждой команды и добавить в настройки шелла.
Там не только отдельные команды. но и варианты применения, так что 350 алиасов придумывать не придется :)
Уже долгие годы накапливаю алиасы с названиями, которые описывают решение проблемы.. То что в той табличке - с успехом превращается в более читабельный вид с автодополнением :) Ну а если проблемка посложнее, то она так же легко превращается в функцию для шелла/или коротенький скрипт. Шелл - замечательная вещь, но многие почему-то всё равно пытаются запомнить всевозможные опции всех утилиток *никсовых, сколько не пытался - всё равно со временем из головы вылетает, а алиасы почему-то накрепко остаются в голове :)
Понятно. Хороший подход, я думаю.
Алиасы удобны ровно до тех пор, пока сидишь за своим шеллом. А использовать свои конфиги на других машинах не всегда возможно.
ситуация: вы пытаетесь зайти на свой веб сервер по ссш, а видете только
$ ssh myserv -v
OpenSSH_4.5p1, OpenSSL 0.9.7l 28 Sep 2006
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to myserv [1.2.3.4] port 22.
debug1: Connection established.
debug1: identity file /Users/fcron/.ssh/identity type -1
debug1: identity file /Users/fcron/.ssh/id_rsa type 1
debug1: identity file /Users/fcron/.ssh/id_dsa type -1
и минутная пауза
казалось бы спасти может только Ctrl-C... ... ...
но _чудо_ соединение продолжается и вы видите родные
Last login: Sat Jan 5 14:29:16 2008 from sweet.home.ru
Linux 2.6.22.6.
но где же приглашение шела?

если ваш серв в это время активно работает с винтом то в это время шел пытается найти конфиги глобальные, затем локальные для пользователя все это распарсить, сконфигурироваться аля сменить заговолок окна терминала, обработать алиасы... далее см. исходники шела
так вот о чем я... в это время нажимаем Ctrl-C прерывая все текущие телодвижения шела и получаем дефолтный
bash-3.1$
а здесь уже можно сделать
$ /bin/cat /proc/loadavg
1179 945 899 1/3506 32517
и можно хвататься за голову минутный загруз 1179
а если бы я набрал top то только добавил головной боли операционке и в итоге мог бы отправиться минимум курить, но скорее всего пошел бы лесом

P.S. извините за воду и обшибки
просто был порыв и я выплеснул наболевшее

P.P.S. алиасы еще терпимо когда их мало
alias s='screen -A -l -xRR -U'
alias v='ls -l --color=tty'
а вапще алиасы - зло

P.P.P.S. все эти сборники команд должны быть у начинающих, но только для того чтоб вспомнить в нужный момент что есть такая команда "в тему" и набрать "man " (моя школа)
Действительно... Осталось теперь полностью мигрировать с винды, только вот никак это окончательно не получается сделать.
Не надо себя насиловать - выбирайте ОС, которая вам подходит. А если есть проблемы, или вещи, которые вам не нравяться, пишите в блогах, форумах, напишите разработчикам... хотя уже оффтопик пошел. :)
Я себя не насилую. Мне серьёзно нравятся все плюсы всяких убунт, кубунт, мандрив и т.д. Только мне мешает один фактор: привычка к Windows (правда не могу сформулировать, к чему именно привык)
Попробуй.Первые 2-3 недели а может и больше будешь искать аналогичный софт и привыкать к нему а потом и винду не захочешь возващатся)
Согласен с вами: критический срок отвыкания от винды - это несколько недель.
знаю несколько случаев, когда люди возвращались на винду после полугода использования убунты.
так что, всё зависит от потребностей.
геймера пересадить на линукс невозможно...
Могу только повториться - надо выбирать систему, которая больше подходит.
ну мне и в кубунте нормально играется)
у меня одна :) одна неделя на все про все. теперь сижу уже настраиваю под себя Vim.
у меня тоже неделя, даже чуть меньше..
вчера с отвращением запустил win(пришлось), еле выдержал :)
Даже можно заскриптовать, лишь бы не перетрудиться =)
for f in /bin/* /sbin/* /usr/bin/* /usr/sbin/*; do man `basename $f` > /dev/brain; done
браво!

а ёщё строчка из исходника windows:

if(System.isWorking())
{
System.Crash();
}
Спасебо большое. Пригодится, только надо будет английский подучить.
Там английский очень простой, достаточно иметь базовые знания (show - показывать, find - искать и тому подобное) + знать компьютерную терминологию.
Огромное спасибо! Всегда мечтал о таком хелпе.
распечатано...
повешено на стенку... буду учить...
Если кто не видел, похожая вещь на русском "http://ru.gentoo-wiki.com/Секреты_командной_строки"
Спасибо за ссылку - поместил в пост.
В дистрибутивах Линукс есть такая вещь как man. Дык вот с помощью него все это можно и даже больше узнать.
ман хорош только, когда знаешь, что тебе нужно. кстати так же как и гугл :)
Надо только найти время на то, чтобы найти нужную страницу, прочитать ее и воспользоваться.
Иногда на это попросту нету времени, а cheat sheet не дураки придумали.
:) Вот именно надо изучить базовые возможности системы и приемы работы с ней. Работа в Линуксе не предпологает тупого зазубривания команд. И что вы будете делать с этими 350 командами? Сомневаюсь что хоть кто-то из отписавшихся здесь просмотрит хоть половину этого списка.
Мы про новичков говорим, или про я-видел-ядра-с-единички-пользователь-линукса?
Для новчика этот список (если это правильный новичек, который читает документы до упора) послужит хорошим началом, по крайней мере он будет знать направление.
Мы говорим обо всех пользователях. Я не могу отнести себя к линукс-гуру, хотя у меня была слака, которая еще на дискетах была, и Red Hat, и тогда еще Манрейк, Дебиан, а теперь Убунту, которой я пользуюсь как основной ОС. Но опять же в этом списке есть команды для работы скажем с APT, которые могут быть полезны, хотя я предпочитаю Synaptic. То есть обычный пользователь найдет новое для себя в этом списке, согласитесь.
Да конечно, вероятность того, что и опытные пользователи для себя что-нибудь найдут есть. Но для новичков все же вероятность больше, поэтому на них внимание сконцентрировал;)
Началом чего? Я не согласен с тем как там подается информация - слишком много лишнего. Как я уже сказал это неправильный подход для работы в линуксе.
Сравните:

ls view files of directory
ls -F view files of directory
ls -l show details of files and directory
ls -a show hidden files
ls *[0-9]* show files and directory containing numbers

tar -cvf archive.tar file1 create a uncompressed tarball
tar -cvf archive.tar file1 file2 dir1 create an archive containing 'file1', 'file2' and 'dir1'
tar -tf archive.tar show contents of an archive
tar -xvf archive.tar extract a tarball
tar -xvf archive.tar -C /tmp extract a tarball into / tmp
tar -cvfj archive.tar.bz2 dir1 create a tarball compressed into bzip2
tar -xvfj archive.tar.bz2 decompress a compressed tar archive in bzip2
tar -cvfz archive.tar.gz dir1 create a tarball compressed into gzip
tar -xvfz archive.tar.gz decompress a compressed tar archive in gzip

и

ls - показать список файлов подробности в man
tar - работа с архивами в формате tar подробности в man
Началом именно работы а не увлечения.
Потому что на работе не всегда есть время читать ман, а вот выполнить некую задачу нужно вовремя. И именно в такие моменты очень даже пригождается знание, как, например, что-нибудь раз(за)архивировать.
Вы так говорите будто бы ман огроменного объема документация, которую необходимо всю прочесть за раз. На самом деле в основном по базовым утилитам документация занимает несколько страниц и (о чудо!) там есть поиск.
Что быстрее, посомотреть в cs на стене (под стеклом, в документике etc) или найти ман, прочитать (перевести, если в дистрибутиве нет русских манов), понять что к чему, закрыть ман, выполнить команду…
М?
Конечно в мане, тут даже думать не над чем, потому что 1) информация хорошо структурирована 2) всегда! под рукой 3) соответствует установленной системе. А с таким листочком будет следующее: надо вспомнить где лежит этот листочек, взять его, глазами! начать искать нужную команду, не найти ее, выругаться и открыть ман.
1. Вас никто не заставляет пользоваться именно этой версией шпоры, можно сделать из этого (и добавить нужное, к примеру) свою, которая будет понятно вам записана и…
2. …и будет всегда под рукой, потому что кто же уберет ее с вашей стены:)?
3. И еще эта бумажка заставить вас выучить все необходимое на уровне рефлексов.
Открыть же ман никогда не поздно.
1-> я вроде нигде не говорил, что хочу пользоваться шпорами, я говрю, что не с этой стороны надо начинать работу с линуксом
2-> ну эти листочки вечно куда-то пропадают
3-> боже упоси...
1. именно о шпорах я говорил. Обратите внимание на то, что я несколько раз упомянул cheat sheet.
2. не пускайте кого попало в свою комнату/кабинет;)
3. вот и зря, над некоторыми вещами задумываться просто не надо, именно поэтому я очень многие вещи прописываю в алиасах zsh и даже сразу сейчас не вспомню, как полностью писать команду:)
Резюмируя: мы с вами с одной стороны придерживаемся одинаковой позиции по манам, но вы считаете, что шпоры не нужны, а я наоборот.
Да не говорил я что шпоры не нужны! Если хотите используйте, только использовать их без вреда для здоровья можно, тогда когда уже имеется базовый опыт работы в командной строке. И вид они должны иметь явно не тот, что представлен по первой ссылке.
Ну, раз не говорили, значит не говорили, тут спорить бесполезно, значит я вас не так понял.
По поводу внешнего вида, согласен, они должны отличатся от того, что там сейчас, но сколько людей, столько мнений, я лично люблю шпоры подобного вида и пользуюсь ими, кто-то совсем другие. Сделать-то не сложно.
Ну да это уже что-то, о таком можно написать)
К сожаление KeyCue — не для линукса, а руками делать подобную красоту лень, да и как-то нет необходимости.
Вы полохо знаете линукс: в командной строке тоже используется масса клавиатурных команд, например ^A - переход в начало строки, ^E - переход в конец строки, ^W - удалить слово слева, ^D - удалить символ под курсором, ^P и ^N - предыдущая и следующая использованые команды и т.д.
:). Вообще-то я говорил только о том, что в KeyCue была сделана столь симпатишная табличка.
За оценку моих знаний командной строки спасибо;)
Посмотрите, пожалуйста, ссылку из поста, так как вы поймете, что там описано применение различных команд, фактически 350 примеров. Я прочел все команды, часть из них (которые позволяют получить информацию) я также попробовал в консоли. Я нашел, что некоторые вещи я делал по другому, поэтому запостил ссылку здесь, чтобы другие могли также посмотреть этот список и найти для себя что-нибудь новенькое. А поскольку этот блог называется "Linux для всех", то читателям данного блога этот пост интересен.
Согласен, изучать все бесполезно, но ознакомиться надо. Кстати для поиска того-не-знаю-чего подходит apropos:

% apropos player
mencoder [mplayer] (1) -
mplayer (1) -
Audacious [audacious] (1) - an audio player for X
XMMS [xmms] (1) - an audio player for X
aplay (1) - command-line sound recorder and player for ALSA soundcard driver
arecord [aplay] (1) - command-line sound recorder and player for ALSA soundcard driver
aviplay (1) - QT-based movie player
ffplay (1) - FFplay media player
mencoder [mplayer] (1) - movie encoder
mpc (1) - Program for controlling Music Player Daemon (MPD)
mpd.conf [mpd] (5) - Music Player Daemon configuration file
mplayer (1) - movie player
sonata (1) - GTK+ client for the Music Player Daemon
wesnothd (6) - Battle for Wesnoth multiplayer network daemon
xine (5) - a free video player
xlsfonts (1) - server font list displayer for X
xprop (1) - property displayer for X
xwud (1x) - image displayer for X

Немного отфильтровав интуитивно можно узнать чем сегодня будем смотреть фильмы и слушать музыку :)
Блин, лажанулся, лишние переносы строк...
Preview, Preview и еще раз Preview... Я вынесу в пост ваше дополнение.
Спасибо, я опять же в данном случае пользовался Synaptic. Кстати, внизу есть форма, где можно предложить свои команды.
Добавляем в ~/.bashrc строчки, которые идут после этого предложения и командой "ex название архива" распаковываем всевозможные архивы, не забивая голову, запоминанием опций(наверно для опытных пользователей это покажется баяном, коих они знают много как и я, но раз тут такая бурная радость этим 350 командам, то наверно многим будет интересно узнать как легко распаковывать архивы не запоминая ниодной опции)

function ex {
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) rar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extracted via ex()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}

p.s. Прибавили бы немного кармы, мог бы нормальные посты о своём опыте *никсовом выкладывать, ато приходится вас радовать такими маленькими отрывками вроде этого(да ещё и без форматирования)
Спасибо за комментарий. Я карму плюсанул в виде исключения - об этом не надо просить, люди заметят интересный контент сами решат. А если есть желание писать - если блог Я умный, пишешь туда, тебе поднимают карму, если пост хороший, потом переносишь в тематический блог.
Насколько понимаю, в блог "Я умный" уже нельзя постить людям с кармой = 0. А если в комментариях оставлять интересный контент, то он уже выглядит совсем не как комментарий(вроде того что я выложил). И пару дней пронаблюдав за всеми движениями на хабре, ничего в голову не пришло как добавить пару строчек с просьбой, вместо того чтобы ещё годами продолжать оставлять небольшие комментарии.
По-моему вы не правы, попробуйте подключиться к этому блогу и писать туда. Можно писать в свой блог, так что возможности все перед вами :)
"опубликовать новый хабратопик в персональный блог — карма >0"
"Чтобы написать в любой коллективный блог нужно иметь положительную карму. Однако еще не так давно можно было писать в особый блог «Я умный» имея даже отрицательную карму. Например, чтобы иметь возможность заявить о себе или реабилитироваться. Но вскоре такая возможность пропала"
Вот и приходится напрягать все мысли как так подмазаться, чтобы получить немного кармы для того чтобы публиковать хоть какой-нибудь контент. Изучать человека, которому готовишь комментарий, чтобы увидев его - он смог сказать себе, что "да, полностью согласен", потом не поленится войти в мой профиль и прибавить кармы. Ведь здесь многие хабрапользователи уже сложившиеся личности и не дай бог затронешь какие-то их религиозные убеждения - сразу заминусуют.
По поводу религиозных убеждений - я атеист :)
Хотя к убеждениям других отношусь с уважением. Ладно, давайте офтопик закончим ;)
Я когда начинал можно было писать в свой блог, а потом переносить в "Я умный" при карме между 2 и 5. Сейчас уже закрыли ?
Аналогично, я тоже писал в свой блог, в "Я умный", потом уже в тематические блоги.
Все придумано за нас. Вот гораздо более функциональный и полезный скрипт - http://www.nongnu.org/atool/

atool is a script for managing file archives of various types (tar, tar+gzip, zip etc).

The main command is aunpack which extracts files from an archive. Did you ever extract files from an archive, not checking whether the files were located in a subdirectory or in the top directory of the archive, resulting in files scattered all over the place? aunpack overcomes this problem by first extracting to a new directory. If there was only a single file in the archive, that file is moved to the original directory. aunpack also prevents local files from being overwritten by mistake.

в debian и ubuntu есть одноименный пакет.

aptitude install atool
Спасибо за ценный комментарий, но для архивов я использую File Roller, и надеюсь что такой функционал появиться в Gnome Commander, а то придется использовать старый-добрый Total.
Вроде ребята из gcmd обещали переехать на GVFS/GIO. Тогда и наступит счастье. А пока вы можете только присоединиться к листу разработчиков и агитировать или патчить код :)
Я хочу чтобы этот проект был хорошим, поэтому меня не будет в списке разработчиков ;)
А в zsh есть так называемые ленивые альясы, когда вызываешь файл на выполнение - запускается соотв. комманда.
alias -s avi="gmplayer"
alias -s bz2="tar -xjvf"
alias -s gz="tar -xzvf"
alias -s pdf="epdfview"
Пример использования:
$ film.avi
запустится gmplayer
http://www.freesource.info/wiki/Stat'i/KratkoOboVsjom/Linux Вот вдогонку, тоже неплохой справочник по коммандом. На этом сайте еще такой же справочник по С++ и английскому языку есть.
Еще один плюсик. Спасибо, тоже вынесу в пост.
Спасибо за исправление - я вынес комментарий в пост, так что можно прям там смотреть.
будет полезно для тех кто совсем ноль..
пол года реальной работы под unix, и вся шпаргала окажется в голове

Конвертим текстовый файлы в HTML (требуется соответсвующий пакет)

я бы предпочел воспользоваться lynx -dump, он даже немножко оформление понимает, в то время как recode всего скорее просто выдаст неформатированый текст
За комментарий спасибо, но на вкус и цвет - фломастеры разные :) Я согласен с вами по поводу HTML, но recode работает и с другими форматами, рекомендую глянуть.
Я бы сказал, не команды Linux, а команды юникса. Большинство из них неспецифичны для линукса. Кроме того, кажется, что если хочется использовать sed (find, iptables, yum, и т.д.), почему бы не изучить его man, а не запомнить в виде шпаргалки набор рецептов.
По поводу названия, я просто перевел название с английского. По поводу манов и шпаргалок подробно обсуждалось чуть выше, как видите, мнение разные так как у обоих "способов познания" есть свои плюсы и минусы.
Спасибо. Насколько я понял там добавили новые команды, в том числе apropos и алисы, которые здесь обсуждались?
Еще раз глянул и сравнил, немного неправильно сказал в предыдущем коментарии. В любом случае добавил линк в пост + линк на PDF-версию.
Only those users with full accounts are able to leave comments. Log in, please.