Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Еще 10 малоизвестных, но полезных команд Linux - часть 2

Оригинал: 10 Lesser Known Linux Commands - Part 2
Автор: Avishek Kumar
Дата публикации: 30 октября 2013 года
Перевод: А. Кривошей
Дата перевода: март 2014 г.

Продолжаем рассматривать малоизвестные команды linux, которые могут быть очень полезными в повседеневной работе как на десктопе, так и на сервере.

12. Команда <space>

Все команды, которые вы вводите в терминале, записываются в истории, и затем могут быть запрошены с помощью команды history. Но есть ли способ обмануть команду history? Да, вы можете сделать это, и очень просто. Просто вставьте один или несколько пробелов перед вводом команды в терминале, и она не будет записана.
Давайте попробуем ввести в терминале пять часто используемых команд Linux (ls, pwd, uname, echo "hi" и who), поставив перед ними пробел, и проверим, будут ли эти команды сохранены в истории.

avi@localhost:~$  ls
avi@localhost:~$  pwd
avi@localhost:~$  uname
avi@localhost:~$  echo "hi"
avi@localhost:~$  who

Теперь запустим команду "history", чтобы проверить, зафиксированы ли вышеприведенные команды.

avi@localhost:~$ history

   40  cd /dev/ 
   41  ls 
   42  dd if=/dev/cdrom1 of=/home/avi/Desktop/squeeze.iso 
   43  ping www.google.com 
   44  su

Вы видите, что наши последние команды не записаны в логе. Обмануть команду "history" также можно с помощью сочетания "cat | bash".

13. Команда stat

Команда stat в Linux выводит подробную информацию о файле или файловой системе, включая размер, количество блоков, дату последнего доступа, модификации и т.д.

avi@localhost:~$ stat 34.odt 

  File: `34.odt' 
  Size: 28822     	Blocks: 64         IO Block: 4096   regular file 
Device: 801h/2049d	Inode: 5030293     Links: 1 
Access: (0644/-rw-r--r--)  Uid: ( 1000/     avi)   Gid: ( 1000/     avi) 
Access: 2013-10-14 00:17:40.000000000 +0530 
Modify: 2013-10-01 15:20:17.000000000 +0530 
Change: 2013-10-01 15:20:17.000000000 +0530

14. <alt>. и <esc>.

Приведенные выше сочетания клавиш на самом деле являются не командами, а твиком, подставляющим в командную строку последнюю введенную команду. Просто нажмите "Alt" или "Esc", и, продолжая удерживать клавишу, нажимайте ".".

15. Команда pv

В фильмах вы можете увидеть симулированный ввод текста, когда он появляется на экране, как будто вводится пользователем. Вы можете направить на вывод в таком режиме любой текст с помощью команды "pv". Если эта команда у вас не установлена, вы можете сделать это с помощью apt или yum.

root@localhost:# echo "Tecmint [dot] com is the world's best website for qualitative Linux article" | pv -qL 20

Tecmint [dot] com is the world's best website for qualitative Linux article

16. mount | column -t

Приведенная выше команда выводит список всех смонтированных файловых систем в форматированном виде с подробностями.

avi@localhost:~$ mount | column -t

/dev/sda1    on  /                         type  ext3         (rw,errors=remount-ro) 
tmpfs        on  /lib/init/rw              type  tmpfs        (rw,nosuid,mode=0755) 
proc         on  /proc                     type  proc         (rw,noexec,nosuid,nodev) 
sysfs        on  /sys                      type  sysfs        (rw,noexec,nosuid,nodev) 
udev         on  /dev                      type  tmpfs        (rw,mode=0755) 
tmpfs        on  /dev/shm                  type  tmpfs        (rw,nosuid,nodev) 
devpts       on  /dev/pts                  type  devpts       (rw,noexec,nosuid,gid=5,mode=620) 
fusectl      on  /sys/fs/fuse/connections  type  fusectl      (rw) 
binfmt_misc  on  /proc/sys/fs/binfmt_misc  type  binfmt_misc  (rw,noexec,nosuid,nodev) 
nfsd         on  /proc/fs/nfsd             type  nfsd         (rw)

17. Команда Ctr+l

Перед тем, как пойти дальше, позвольте напомнить вам, как бысто очистить терминал. Обычно это делается с помощью команды "clear", но тот же эффект достигается с помощью клавиатурного сочетания "Ctr+l".

18. Команда curl

Как насчет проверки непрочитанных почтовых сообщений из командной строки? Эта команда очень полезна для всех, кто работает на сервере. Она запрашивает пароль непосредственно в процессе работы, поэтому вам не нужно вводить его в теле команды, повышая тем самым вероятность его компроментирования.

19. Команда screen

Команда screen дает возможность отключать от текущей сессии долго работающий запущенный процесс, чтобы он выполнялся в фоне, а затем вновь подключить его к текущей сессии.
Для запуска процесса мы обычно используем команду:

avi@localhost:~$ ./long-unix-script.sh

При этом пользователь должен держать данную сессию открытой до завершения работы процесса, однако мы можем также запустить вышеприведенную команду следующим образом:

avi@localhost:~$ screen ./long-unix-script.sh

После запуска команды нажмите "Ctrl + A" и затем "d", чтобы отключить процесс от текущей сессии. Он будет продолжать работать в фоновом режиме. Для того, чтобы снова подключить процесс, введите:

avi@localhost:~$ screen -r 4980.pts-0.localhost

Замечание: последняя часть команды здесь - это id скрина, который можно узнать с помощью команды "screen -ls".

20. file

"file" - это команда, с помощью которой можно получить информацию о типе файла.

avi@localhost:~$ file 34.odt 

34.odt: OpenDocument Text

21. id

Эта команда выводит реальные и эффективные id пользователя и группы.

avi@localhost:~$ id

uid=1000(avi) gid=1000(avi) 
groups=1000(avi),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),109(netdev),111(bluetooth),117(scanner)

На сегодня это все. Но продолжение будет.