Пользовательские командыв Linux
Пользовательские командыв Linux
А сейчас мы поговорим о файлах настроек пользовательского шелла, которые выполняются во время загрузки шелла (bash шелл - самый популярный среди пользователей, видимо, потому, что он устанавливается операционной системой по умолчанию). Первый из них - файл:
~/.bash_profile
Маленькая подсказка: знак "тильда" - <~> указывает на название Вашего домашнего каталога. Это же название содержит переменная $HOME.
В процессе инициализации пользовательского шелла участвуют три файла:
/etc/profile - общесистемный файл инициализации, выполняемый при загрузке шелла
~/.bash_profile - файл персональных настроек пользователя, выполняемый при загрузке
~/.bashrc - файл пользовательских настроек
При помощи этих файлов каждый пользователь может изменить параметры шелла, а также описать набор своих собственных команд. Важную роль в этих настройках играют альясы - aliases. Альясы - это "заменители" стандартных команд шелла, которые могут выполняться аналогично стандартным командам. Синтаксис альясов:
alias shortcut='command -options'
Символ "'" в правой части - это "обратный апостроф", который находится над клавишей табуляции. Shortcut - имя новой команды пользователя, command-options - набор стандартных команд с их параметрами.
Теперь... облегчим себе жизнь. Избавимся от необходимости вводить длинные команды, заменив их короткими и понятными сокращениями. Вот несколько примеров:
alias c='clear'
alias d='ls -lF'
alias dir='ls -lF'
alias ftp='ftp -v'
alias rm='rm -i'
alias startx='startx> & /dev/null'
alias x='startx> & /dev/null'
Вы сразу заметите, что выполнять некоторые команды стало проще и быстрее. Вместо набора "ls -lF", можно напечатать одну букву "d". Запуск графической оболочки X Window производится также нажатием одной клавиши, причем на экран монитора не будет выводиться куча служебной информации, которую не всегда хочется читать, стандартный вывод stdout при выполнении этой команды будет перенаправлен на устройство /dev/null. Легко и чисто.
Обратите внимание на строку, которая повышает безопасность Вашей системы. Даже если Вы вошли в систему не как ее администратор (root) и не можете случайно удалить важные системные файлы, всегда существует вероятность потери дней, недель или месяцев работы при неосторожном выполнении команды "rm". Иногда UNIX (и Linux тоже) может быть жестоким. Но теперь система будет всегда спрашивать подтверждение на удаление любых файлов. Несомненно, иногда это утомляет, но случайное удаление файлов уже не грозит.
Добавим еще несколько полезных функций в файл ~/.bashrc. Вспомним, что функция представляет собой маленький черный ящик, который может воспринимать и выдавать информацию. Bash шелл предоставляет пользователю возможность создания своих функций. Попробуем добавить одну хрестоматийную фунццию в этот файл:
Say_hello()
{echo "Hello world"}
Вызов функции осуществляется по ее имнни, Say_hello, а результат - слова приветствия будут выводиться на экран. Это легко, но мы двигаемся дальше. Можно добавить ряд очень полезных функций в файл ~/.bash_profile. Каких? Например, если Вы часто используете архиватор tar, то следующие функции Вы не сможете не оценить:
#
tarc () { tar -cvzf $1.tar.gz $1 }
tart () { tar -tvzf $1 | less }
tarx () { tar -xvzf $1 $2 $3 $4 $5 $6 }
zless () { zcat $* | less }
z () { zcat $* | less }
Теперь, вместо того чтобы набирать строки, подобные этой:
tar -xvzf some_very_long_filename-3.1415926535-bin-Motif-static.tar.gz
Вы печатаете:
tarx some_ver
... и нажимаете клавишу табуляции до тех пор, пока имя файла не будет отображено полностью. UNIX поддерживает имена файлов до 256 символов, хотя это и не означает, что все имена файлов будут именно такой длины. Все остальное сделает вызванная функция. Работа с супердлинными командными строками становится легче. Для описания коротких функций или последовательностей команд лучше использовать альясы. Конечно же, можно долго спорить, что лучше и эффективнее - создавать альясы или новые пользовательские функции. Главное - оба эти способа работоспособны, доступны и реально облегчают работу с системой.
И последний совет... как освободить немного места на жестком диске. Как? Сжать файлы с документацией при помощи программы gzip и просматривать их в случае необходимости при помощи функции " z ", описанной выше. Она "на лету" распакует нужный файл и выведет его на экран монитора для просмотра.
Игорь Грень - титульная страница
А сейчас мы поговорим о файлах настроек пользовательского шелла, которые выполняются во время загрузки шелла (bash шелл - самый популярный среди пользователей, видимо, потому, что он устанавливается операционной системой по умолчанию). Первый из них - файл:
~/.bash_profile
Маленькая подсказка: знак "тильда" - <~> указывает на название Вашего домашнего каталога. Это же название содержит переменная $HOME.
В процессе инициализации пользовательского шелла участвуют три файла:
/etc/profile - общесистемный файл инициализации, выполняемый при загрузке шелла
~/.bash_profile - файл персональных настроек пользователя, выполняемый при загрузке
~/.bashrc - файл пользовательских настроек
При помощи этих файлов каждый пользователь может изменить параметры шелла, а также описать набор своих собственных команд. Важную роль в этих настройках играют альясы - aliases. Альясы - это "заменители" стандартных команд шелла, которые могут выполняться аналогично стандартным командам. Синтаксис альясов:
alias shortcut='command -options'
Символ "'" в правой части - это "обратный апостроф", который находится над клавишей табуляции. Shortcut - имя новой команды пользователя, command-options - набор стандартных команд с их параметрами.
Теперь... облегчим себе жизнь. Избавимся от необходимости вводить длинные команды, заменив их короткими и понятными сокращениями. Вот несколько примеров:
alias c='clear'
alias d='ls -lF'
alias dir='ls -lF'
alias ftp='ftp -v'
alias rm='rm -i'
alias startx='startx> & /dev/null'
alias x='startx> & /dev/null'
Вы сразу заметите, что выполнять некоторые команды стало проще и быстрее. Вместо набора "ls -lF", можно напечатать одну букву "d". Запуск графической оболочки X Window производится также нажатием одной клавиши, причем на экран монитора не будет выводиться куча служебной информации, которую не всегда хочется читать, стандартный вывод stdout при выполнении этой команды будет перенаправлен на устройство /dev/null. Легко и чисто.
Обратите внимание на строку, которая повышает безопасность Вашей системы. Даже если Вы вошли в систему не как ее администратор (root) и не можете случайно удалить важные системные файлы, всегда существует вероятность потери дней, недель или месяцев работы при неосторожном выполнении команды "rm". Иногда UNIX (и Linux тоже) может быть жестоким. Но теперь система будет всегда спрашивать подтверждение на удаление любых файлов. Несомненно, иногда это утомляет, но случайное удаление файлов уже не грозит.
Добавим еще несколько полезных функций в файл ~/.bashrc. Вспомним, что функция представляет собой маленький черный ящик, который может воспринимать и выдавать информацию. Bash шелл предоставляет пользователю возможность создания своих функций. Попробуем добавить одну хрестоматийную фунццию в этот файл:
Say_hello()
{echo "Hello world"}
Вызов функции осуществляется по ее имнни, Say_hello, а результат - слова приветствия будут выводиться на экран. Это легко, но мы двигаемся дальше. Можно добавить ряд очень полезных функций в файл ~/.bash_profile. Каких? Например, если Вы часто используете архиватор tar, то следующие функции Вы не сможете не оценить:
#
tarc () { tar -cvzf $1.tar.gz $1 }
tart () { tar -tvzf $1 | less }
tarx () { tar -xvzf $1 $2 $3 $4 $5 $6 }
zless () { zcat $* | less }
z () { zcat $* | less }
Теперь, вместо того чтобы набирать строки, подобные этой:
tar -xvzf some_very_long_filename-3.1415926535-bin-Motif-static.tar.gz
Вы печатаете:
tarx some_ver
... и нажимаете клавишу табуляции до тех пор, пока имя файла не будет отображено полностью. UNIX поддерживает имена файлов до 256 символов, хотя это и не означает, что все имена файлов будут именно такой длины. Все остальное сделает вызванная функция. Работа с супердлинными командными строками становится легче. Для описания коротких функций или последовательностей команд лучше использовать альясы. Конечно же, можно долго спорить, что лучше и эффективнее - создавать альясы или новые пользовательские функции. Главное - оба эти способа работоспособны, доступны и реально облегчают работу с системой.
И последний совет... как освободить немного места на жестком диске. Как? Сжать файлы с документацией при помощи программы gzip и просматривать их в случае необходимости при помощи функции " z ", описанной выше. Она "на лету" распакует нужный файл и выведет его на экран монитора для просмотра.
Игорь Грень - титульная страница
Компьютерная газета. Статья была опубликована в номере 30 за 1998 год в рубрике soft :: linux