0000000000 q w e r t y u i o p a s d f g h
0000000020 j k l z x c v b n m q w e r t y
0000000040 u i o p \n
0000000045
Выведем в символьном варианте, пропустив первые 4 символа.
$ echo "qwertyuiopasdfghjklzxcvbnmqwertyuiop" | od -tc -j4
0000000004 t y u i o p a s d f g h j k l z
0000000024 x c v b n m q w e r t y u i o p
0000000044 \n
0000000045
Выведем в символьном варианте только 5 первых символов.
$ echo "qwertyuiopasdfghjklzxcvbnmqwertyuiop" | od -tc -N5
0000000000 q w e r t
0000000006
Выведем в шестнадцатиричном варианте по байту.
$ echo "qwertyuiopasdfghjklzxcvbnmqwertyuiop" | od -tx1
0000000000 71 77 65 72 74 79 75 69 6f 70 61 73 64 66 67 68
0000000020 6a 6b 6c 7a 78 63 76 62 6e 6d 71 77 65 72 74 79
0000000040 75 69 6f 70 0a
0000000045
Выведем с десятичными адресами.
$ echo "qwertyuiopasdfghjklzxcvbnmqwertyuiop" | od -Ad
000000000 16231273561 15135274564 16330270157 15031663144
000000016 17233065552 14235461570 16734266556 17135071145
000000032 16033664565 14235400012
000000037
Применим утилиту od к каталогу.
Будем выводить информацию в десятичном варианте, чтобы были видны inode, выводимые для содержимого каталога.
$ cd directory
$ od -td .
0000000000 0000199611 0000000000 0000000032 0000000000
0000000020 0000065560 1601372206 0000206782 0000000000
0000000040 0000000064 0000000000 0000131096 0000011822
0000000060 0000192436 0000000000 0000000096 0000000000
0000000100 0000458784 1601660270 0007498084 1949197056
0000000120
Получим inode подкаталога. Видим, что по смещению 0..060 именно он и указан, за ним идет информация об имени.
$ ls -i .
192436 new_dir
$ cd ..
Получим inode анализируемого каталога. Видим, что по смещению 0..00 указан он.
$ ls -i .
199611 directory 206786 log_file2.txt
206784 files_types 206792 od_analyze
206785 find_hl 206795 od_file1.txt
206791 for_copy.txt 206794 od_file2.txt
206788 for_links1.txt 206787 rezultatu.txt
206788 for_links11.txt
206789 for_links2.txt
Проанализируем inode вышележащего каталога, он указан в строке по смещению 0..20.
$ cd ..
$ ls -i
215126 for_links1.txt 206782 lab2
206788 for_links12.txt
206760 lab1
Таким образом, в каталоге содержится информация: сначала о самом себе с указанием inode, затем о вышележащем каталоге также с указанием inode, затем о подкаталоге с его inode.
Приведем скрипт, выполняющий элементарные операции с каталогом и сравнивающий его содержимое до и после выполнения этих операций (содержимое будем анализировать утилитой od, а сравнивать будем, используя утилиту diff).
#lab 2
#zadanie 4
#pered zapyskom tekushii katalog d.b. tot, v kotorom bydet cozdana directoria
mkdir directory
od -td directory > od_file1.txt
echo "Directory created."
cp for_copy.txt ./directory/for_copy_c.txt
od -td directory > od_file2.txt
echo "\n File copied. \n Difference:"
diff od_file1.txt od_file2.txt
mv ./directory/for_copy_c.txt ./directory/file.txt
od -td directory > od_file1.txt
echo "\n File renamed. \n Difference:"
diff od_file2.txt od_file1.txt
rm ./directory/file.txt
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.