Ключевые слова:shell, faq, (найти похожие документы)
_ RU.LINUX (2:5077/15.22) ___________________________________________ RU.LINUX _
From : Igor Hrapovskii 2:5062/1.20 05 Aug 99 06:12:22
Subj : Tune Up! Shell
________________________________________________________________________________
Привет All...
1999.07.22 - Быстрый выход.
Для быстрого log out без набирания 'exit' нажмите 'CTRL+D' и вы выйдете из шела.
Для того что бы это отключить,создайте переменную 'ignoreeof'
(set ignoreeof).
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Быстрое замещение в командной строке
Вы можете делать замены в истории комманд. Если при наборе комманды вы ошиблись
и желаете без перенабора или вызова из истории коммад для редактирования ее
выполнить посмотрите пример:
Допустим вы хотели посмотреть на файл 'foo.bar' и ошиблись 'ls -l foo.ber'.
С коммандой '^er^ar^' вы можете заменить 'er' на 'ar' в своей последней
набранной комманде и сразу же выполнить ее.
% ls -l foo.ber
ls: foo.ber: No such file or directory
% ^er^ar
ls -l foo.bar
-rw------- 1 root root 207348 Jul 8 12:42 foo.bar
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.25 - Баги в шелл скрипте? (стоило ли переводить?)
Если вы пишите шелл-скрипт и желаете подебагить его, поместите строчку 'set -vx'
в начало скрипта.
Он вам все и покажет.
Можно добиться того же через командную строку : 'sh -x filename'
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Что за файл?
Что бы узнать наберите 'whatis filename'. filename -имя файла на диске.
Можете так же попробовать комманду 'file'. File даст вам информацию
о файле включая платформу, версию, и структуру библиотек.
% file /usr/bin/enlightenment
/usr/bin/enlightenment: ELF 32-bit LSB executable, Intel 80386, version 1,
dynamically linked (uses shared libs), stripped
комбинируем:
% file `which startx`
/usr/X11R6/bin/startx: Bourne shell script text
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - ...а это кому нибудь надо?
Для того чтобы узнать библиотеки которые использует программа, используйте 'ldd'
комманду.
Пример:
% ldd rxvt
libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4 (0x4001b000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x4002b000)
libc.so.6 => /lib/libc.so.6 (0x400cf000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Что происходит у меня за спиной?
Если есть желание посмотреть на работу процесса в отладочных целях 'strace'
для вас. Она(он) покажет вам что делает процесс во время выполнения
или если он будет присоеденен к уже запущенному процессу.
Вы так же можете приаттачить strace ко всем потомкам процесса.
Для присоеденения к уже запущенному процессу, используйте 'strace -p PID'.
Для присоеденения к потомку используйте '-f flag'
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Strace для библиотек
ltrace- кузин strace.
Ltrace имеет такие же функции как strace, но сфокусированные более на
библиотеках и будет показывать вам все вызовы к системе и библиотекам.
Для отладки.
------------------------------------------------------------------------
Author: Larry Reckner [[email protected]]
1999.07.14 - Терминал замусорился.
Если ваши настройки терминала сбросились или вы не можете прочесть текст
на экране попробуйте использовать 'refresh' комманду. Если ни чего не произошло
попробуйте 'echo "\033c"' прежде чем выйдете в шел.
1999.07.22 - Опять шелл.
Когда переменные определяются в шелл скрипте, большенство людей используют:
if [ -z "$host" ]
then
host=`uname -n`
fi
Кроме того вы можете сохратить время набора используя это:
: ${host:=`uname -n`}
Это говорит шеллу : если $host ранее не определена, выполни 'uname -n'
комманду для установки значения переменной.
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Hе уверены что хотите выполнить комманду?
Если вы не уверены что хотите выполнить комманду потому что не знаете точно
ее последствий, попробуйте это:
Hапример вы хотите удалить большое кол-во файлов , но хотите быть уверенным
в том не удалите что-либо еще (без использования rm -i опции), попробуйте
выполнить комманду как эхо в начале. Это покажет вам все комманды которые
будут выполняться .
% echo rm *.class
rm DesCipher.class animatedMemoryImageSource.class authenticationPanel.class
clipboardFrame.class optionsFrame.class rfbProto.class vncCanvas.class
vncviewer.class
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.22 - Less - вещь.
Классный текстовый вьювер.
------------------------------------------------------------------------
Автор: Larry Reckner [[email protected]]
1999.07.25 - Прокрутка терминала.
Для прокрутки ранее выведенной информации на терминал жмите
SHIFT+PAGEUP и SHIFT+PAGEDOWN.
------------------------------------------------------------------------
Author: Vaughn Dickson [[email protected]]
1999.07.27 - Копирование/вставка в терминале.
Если у вас инсталлирован gmp вы можете выделить текст мышкой и вставить его
в позицию курсора нажав среднюю кнопку мыши.
В X-ах так же.
------------------------------------------------------------------------
Автор: Marius Aamodt Eriksen [[email protected]]
Перевод: Игорь Храповский. Igor Hrapovskii
E-mail: [email protected]
Приветствуються любые комментарии по поводу статьи, возможны неточности.
Вы можете использовать статью в любых Hе коммерческих целей.
Приветсвуеться размещение на сайтах и FAQ посвещенных Линуксу с указанием
Имени переводчика.
... с уважением, Игорь.
--- 3.00.Beta3+ * Origin: "Старый , опытный камикадзе." (2:5062/1.20)