文本输出,linux目录结构及文件管理

2019-11-19 02:57 来源:未知
  1 //SYSMETS3.C--System Metrics Display Program No.3(c) Charles Petzold, 1998
  2 #include <Windows.h>
  3 #include "SYSMETS.h"
  4 
  5 LRESULT CALLBACK WndPorc(HWND, UINT, WPARAM, LPARAM);
  6 
  7 int WINAPI WinMain( __in HINSTANCE hInstance
  8                 , __in_opt HINSTANCE hPrevInstance
  9                 , __in LPSTR lpCmdLine
 10                 , __in int nShowCmd )
 11 {
 12     static TCHAR szAppName[] = TEXT("Sysmets3");
 13     HWND hwnd;
 14     MSG msg;
 15     WNDCLASS wndclass;
 16 
 17     wndclass.style = CS_HREDRAW | CS_VREDRAW;
 18     wndclass.lpfnWndProc = WndPorc;
 19     wndclass.cbClsExtra = 0;
 20     wndclass.cbWndExtra = 0;
 21     wndclass.hInstance = hInstance;
 22     wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
 23     wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
 24     wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
 25     wndclass.lpszClassName = szAppName;
 26     wndclass.lpszMenuName = NULL;
 27 
 28     if (!RegisterClass(&wndclass))
 29     {
 30         MessageBox(NULL, TEXT("Program requires windows NT!")
 31             , szAppName, MB_ICONERROR);
 32         return 0;
 33     }
 34 
 35     hwnd = CreateWindow(szAppName, TEXT("Get System Metrics No.3")
 36         , WS_OVERLAPPEDWINDOW | WS_VSCROLL | WS_HSCROLL
 37         , CW_USEDEFAULT, CW_USEDEFAULT
 38         , CW_USEDEFAULT, CW_USEDEFAULT
 39         , NULL, NULL, hInstance, NULL);
 40 
 41     ShowWindow(hwnd, nShowCmd);
 42     UpdateWindow(hwnd);
 43 
 44     while (GetMessage(&msg, hwnd, 0, 0))
 45     {
 46         TranslateMessage(&msg);
 47         DispatchMessage(&msg);
 48     }
 49 
 50     return msg.wParam;
 51 }
 52 
 53 LRESULT CALLBACK WndPorc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 54 {
 55     static int cxChar, cxCaps, cyChar, cxClient, cyClient, iMaxWidth;
 56     HDC hdc;
 57     int i, x, y, iVertPos, iHorzPos, iPaintBeg, iPaintEnd;
 58     PAINTSTRUCT ps;
 59     SCROLLINFO si;
 60     TCHAR szBuffer[10];
 61     TEXTMETRIC tm;
 62 
 63     switch (message)
 64     {
 65     case WM_CREATE:
 66         hdc = GetDC(hwnd);
 67         GetTextMetrics(hdc, &tm);
 68         cxChar = tm.tmAveCharWidth;
 69         cxCaps = (tm.tmPitchAndFamily & 1 ? 3 : 2) * cxChar / 2;
 70         cyChar = tm.tmHeight + tm.tmExternalLeading;
 71         ReleaseDC(hwnd, hdc);
 72 
 73         //save the width of the three columns
 74         iMaxWidth = 40 * cxChar + 22 * cxCaps;
 75         return 0;
 76 
 77     case WM_SIZE:
 78         cxClient = LOWORD(lParam);
 79         cyClient = HIWORD(lParam);
 80         
 81         //set vertical scroll bar range and page size
 82         si.cbSize = sizeof(SCROLLINFO);
 83         si.fMask = SIF_RANGE | SIF_PAGE;
 84         si.nMin = 0;
 85         si.nMax = NUMLINES - 1;
 86         si.nPage = cyClient / cyChar;
 87         SetScrollInfo(hwnd, SB_VERT, &si, TRUE);
 88 
 89         //set horizontal scroll bar range and page size
 90         si.cbSize = sizeof(SCROLLINFO);
 91         si.fMask = SIF_RANGE | SIF_PAGE;
 92         si.nMin = 0;
 93         si.nMax = iMaxWidth / cxChar;
 94         si.nPage = cxClient / cxChar;
 95         SetScrollInfo(hwnd, SB_HORZ, &si, TRUE);
 96 
 97         return 0;
 98 
 99     case WM_VSCROLL:
100         //get all the vertical scroll bar information
101         si.cbSize = sizeof(SCROLLINFO);
102         si.fMask = SIF_ALL;
103         GetScrollInfo(hwnd, SB_VERT, &si);
104 
105         //save the position for comparison later on
106         iVertPos = si.nPos;
107 
108         switch (LOWORD(wParam))
109         {
110         case SB_TOP:
111             si.nPos = si.nMin;
112             break;
113         case SB_BOTTOM:
114             si.nPos = si.nMax;
115             break;
116         case SB_LINEUP:
117             si.nPos -= 1;
118             break;
119         case SB_LINEDOWN:
120             si.nPos += 1;
121             break;
122         case SB_PAGEUP:
123             si.nPos -= si.nPage;
124             break;
125         case SB_PAGEDOWN:
126             si.nPos += si.nPage;
127             break;
128         case SB_THUMBTRACK:
129             si.nPos = si.nTrackPos;
130             break;
131         default:
132             break;
133         }
134 
135         //set the position and then retrieve it. Due to adjustments
136         //by windows it may not be the same as the value set.
137         si.fMask = SIF_POS;
138         SetScrollInfo(hwnd, SB_VERT, &si, TRUE);
139         GetScrollInfo(hwnd, SB_VERT, &si);
140 
141         //if the position has changed, scroll the window and update it
142         if (si.nPos != iVertPos)
143         {
144             ScrollWindow(hwnd, 0, cyChar * (iVertPos - si.nPos)
145                 , NULL, NULL);
146             UpdateWindow(hwnd);
147         }
148 
149         return 0;
150 
151     case WM_HSCROLL:
152         //get all the vertical scroll bar information
153         si.cbSize = sizeof(SCROLLINFO);
154         si.fMask = SIF_ALL;
155 
156         //save the position for comparison later on
157         GetScrollInfo(hwnd, SB_HORZ, &si);
158         iHorzPos = si.nPos;
159 
160         switch (LOWORD(wParam))
161         {
162         case SB_LINELEFT:
163             si.nPos -= 1;
164             break;
165         case SB_LINERIGHT:
166             si.nPos += 1;
167             break;
168         case SB_PAGELEFT:
169             si.nPos -= si.nPage;
170             break;
171         case SB_PAGERIGHT:
172             si.nPos += si.nPage;
173         case SB_THUMBPOSITION:
174             si.nPos = si.nTrackPos;
175             break;
176         default:
177             break;
178         }
179 
180         //set the position and then retrieve it. Due to adjustments
181         //by windows it may not be the same as the value set.
182         si.fMask = SIF_POS;
183         SetScrollInfo(hwnd, SB_HORZ, &si, TRUE);
184         GetScrollInfo(hwnd, SB_HORZ, &si);
185 
186         //if the position has changed, scroll the window
187         if (si.nPos != iHorzPos)
188         {
189             ScrollWindow(hwnd, cxChar * (iHorzPos - si.nPos)
190                 , 0, NULL, NULL);
191         }
192 
193         return 0;
194 
195     case WM_PAINT:
196         hdc = BeginPaint(hwnd, &ps);
197 
198         //get vertical scroll bar position
199         si.cbSize = sizeof(SCROLLINFO);
200         si.fMask = SIF_POS;
201         GetScrollInfo(hwnd, SB_VERT, &si);
202         iVertPos = si.nPos;
203 
204         //get horizontal scroll bar position
205         GetScrollInfo(hwnd, SB_HORZ, &si);
206         iHorzPos = si.nPos;
207 
208         //find painting limits
209         iPaintBeg = max(0, iVertPos + ps.rcPaint.top / cyChar);
210         iPaintEnd = min(NUMLINES - 1, iVertPos + ps.rcPaint.bottom / cyChar);
211 
212         for (i = iPaintBeg; i <= iPaintEnd; ++i)
213         {
214             x = cxChar * (1 - iHorzPos);
215             y = cyChar * (i - iVertPos);
216 
217             TextOut(hdc, x, y, sysmetrics[i].szLabel
218                 , lstrlen(sysmetrics[i].szLabel));
219 
220             TextOut(hdc, x + 22 * cxCaps, y
221                 , sysmetrics[i].szDesc, lstrlen(sysmetrics[i].szDesc));
222 
223             SetTextAlign(hdc, TA_RIGHT | TA_TOP);
224 
225             TextOut(hdc, x + 22 * cxCaps + 40 * cxChar, y, szBuffer
226                 , wsprintf(szBuffer, TEXT("%5d"), GetSystemMetrics(sysmetrics[i].iIndex)));
227 
228             SetTextAlign(hdc, TA_LEFT | TA_TOP);
229         }
230 
231         EndPaint(hwnd, &ps);
232         return 0;
233 
234     case WM_DESTROY:
235         PostQuitMessage(0);
236         return 0;
237     }
238 
239     return DefWindowProc(hwnd, message, wParam, lParam);
240 }

文件压缩及归档:

gzip命令:

  gzip[OPTION]... FILE ...

  -d  解压缩,相当于gunzip

  -c  将解压或压缩的结果输出至标准输出

  -r  递归处理,将指定目录下的所有文件及子目录一并处理

  -#  指定压缩比,#表示数字1-9

bzip2命令:

  bzip2 [OPTION]... FILE ...

  -k  压缩时保留源文件

  -d  解压缩

  -#  指定压缩比,#表示数字1-9,默认为6

  bzcat  不解压的的情况下查看文件内容

xz命令:

  xz[OPTION]... FILE ...

  -k  保留源文件

  -d  解压

  -#  指定压缩比,#表示数字1-9,默认为6

  bzcat  不解压的的情况下查看文件内容

打包压缩:

zip命令:跨平台压缩工具 

-r 处理指定目录和指定目录下的使用子目录
uzaip  解压缩

tar命令:

-c 创建.tar格式的文件
-x 解开.tar格式的文件
-f 使用归档文件
-v 显示详细信息
-t 查看包内文件
-j 使用baip2程序
-z 使用gzip程序
-p 打包时保留文件及目录的权限
-P 打包时保留文件及目录的绝对路径
-C 释放的目的地

打包:
对文件和目录打包和压缩(c)
tar -cf file.tar file
tar -czf file.tar.gz file
tar -cjf file.tar.bz2 file
查看包内容(t)
a.tar-------->tar -tf a.tar
a.tar.gz---->tar -tzf a.tar.gz
a.tar.bz2-->tar -tjf a.tar.bz2
对文件和目录解包(x)
tar -xf file.tar -C 路径
tar -xzf file.tar.gz -C 路径
tar -xjf file.tar.bz2 -C 路径

cpio命令:存取归档包中的文件

  -o    将文件拷贝打包成文件或者将文件输出到设备上
  -i   解包,将打包文件解压或将设备上的备份还原到系统
  -t   预览,查看文件内容或者输出到设备上的文件内容
  -v   显示打包过程中的文件名称。
  -d   解包生成目录,在cpio还原时,自动的建立目录
  -c   一种较新的存储方式

连接Mysql后,结束一条sql语句要在后面加一个分号”;“。

SYSMETS.H

Linux的目录结构:

 图片 1                     

      /            根分区 linux文件系统的起点

                   /bin           普通用户的命令,普通用户能使用

                   /sbin         管理员使用的命令,只有管理员能使用

                   /home      普通用户的宿主目录

                   /root         管理员的宿主目录

                   /boot        linux启动所需的文件,内核,grub,内核引导文件

                   /dev          设备文件,硬盘,键盘鼠标,光驱等

                   /usr           应用程序 /usr/src  源码包的存放路径

                   /etc           配置文件

                   /opt           安装额外软件时的存放路径

                   /var         日志文件,邮件等

                   /proc         虚拟文件系统(计算机内核的信息,CPU...),数据都在内存中

                   /lib          库文件,驱动

                   /selinux    美国国家安全属研发的安全机制

                   /tmp         临时文件存放目录(公共文件夹)

                   /media     挂载点(redhat9.0里面使用的/mnt)

                   /sys     系统相关文件

                   /srv           启动的服务需要访问的数据目录

                   /mnt    临时文件系统挂载点

一、基本操作

 1 //SYSMETS.H -- System metrics display structure
 2 #include <Windows.h>
 3 
 4 #define NUMLINES ((int) (sizeof(sysmetrics) / sizeof(sysmetrics[0])))
 5 
 6 struct  
 7 {
 8     int iIndex;
 9     TCHAR *szLabel;
10     TCHAR *szDesc;
11 }
12 sysmetrics[] =
13 {
14     SM_CXSCREEN,            TEXT("SM_CXSCREEN"),            TEXT("Screen width in pixels"),
15     SM_CYSCREEN,            TEXT("SM_CYSCREEN"),            TEXT("Screen height in pixels"),
16     SM_CXVSCROLL,            TEXT("SM_CXVSCROLL"),            TEXT("Vertical scroll width"),
17     SM_CYHSCROLL,            TEXT("SM_CYHSCROLL"),            TEXT("Horizontal scroll height"),
18     SM_CYCAPTION,            TEXT("SM_CYCAPTION"),            TEXT("Caption bar height"),
19     SM_CXBORDER,            TEXT("SM_CXBORDER"),            TEXT("Window border width"),
20     SM_CYBORDER,            TEXT("SM_CYBORDER"),            TEXT("Window border height"),
21     SM_CXFIXEDFRAME,        TEXT("SM_CXFIXEDFRAME"),        TEXT("Dialog window frame width"),
22     SM_CYFIXEDFRAME,        TEXT("SM_CYFIXEDFRAME"),        TEXT("Dialog window frame height"),
23     SM_CYVTHUMB,            TEXT("SM_CYVTHUMB"),            TEXT("Vertical scroll thumb height"),
24     SM_CXHTHUMB,            TEXT("SM_CXHTHUMB"),            TEXT("Horizontal scroll thumb width"),
25     SM_CXICON,                TEXT("SM_CXICON"),                TEXT("Icon width"),
26     SM_CYICON,                TEXT("SM_CYICON"),                TEXT("Icon height"),
27     SM_CXCURSOR,            TEXT("SM_CXCURSOR"),            TEXT("Cursor width"),
28     SM_CYCURSOR,            TEXT("SM_CYCURSOR"),            TEXT("Cursor height"),
29     SM_CYMENU,                TEXT("SM_CYMENU"),                TEXT("Menu bar height"),
30     SM_CXFULLSCREEN,        TEXT("SM_CXFULLSCREEN"),        TEXT("Full screen client area width"),
31     SM_CYFULLSCREEN,        TEXT("SM_CYFULLSCREEN"),        TEXT("Full screen client area height"),
32     SM_CYKANJIWINDOW,        TEXT("SM_CYKANJIWINDOW"),        TEXT("Kanji window height"),
33     SM_MOUSEPRESENT,        TEXT("SM_MOUSEPRESENT"),        TEXT("Mouse present flag"),
34     SM_CYVSCROLL,            TEXT("SM_CYVSCROLL"),            TEXT("Vertical scroll arrow height"),
35     SM_CXHSCROLL,            TEXT("SM_CXHSCROLL"),            TEXT("Horizontal scroll arrow width"),
36     SM_DEBUG,                TEXT("SM_DEBUG"),                TEXT("Debug version flag"),
37     SM_SWAPBUTTON,            TEXT("SM_SWAPBUTTON"),            TEXT("Mouse buttons swapped flag"),
38     SM_CXMIN,                TEXT("SM_CXMIN"),                TEXT("Minimum window width"),
39     SM_CYMIN,                TEXT("SM_CYMIN"),                TEXT("Minimum window height"),
40     SM_CXSIZE,                TEXT("SM_CXSIZE"),                TEXT("Min/Max/Close button width"),
41     SM_CYSIZE,                TEXT("SM_CYSIZE"),                TEXT("Min/Max/Close button height"),
42     SM_CXSIZEFRAME,            TEXT("SM_CXSIZEFRAME"),            TEXT("Window sizing frame width"),
43     SM_CYSIZEFRAME,            TEXT("SM_CYSIZEFRAME"),            TEXT("Window sizing frame height"),
44     SM_CXMINTRACK,            TEXT("SM_CXMINTRACK"),            TEXT("Minimum window tracking width"),
45     SM_CYMINTRACK,            TEXT("SM_CYMINTRACK"),            TEXT("Minimum window tracking height"),
46     SM_CXDOUBLECLK,            TEXT("SM_CXDOUBLECLK"),            TEXT("Double click x tolerance"),
47     SM_CYDOUBLECLK,            TEXT("SM_CYDOUBLECLK"),            TEXT("Double click y tolerance"),
48     SM_CXICONSPACING,        TEXT("SM_CXICONSPACING"),        TEXT("Horizontal icon spacing"),
49     SM_CYICONSPACING,        TEXT("SM_CYICONSPACING"),        TEXT("Vertical icon spacing"),
50     SM_MENUDROPALIGNMENT,    TEXT("SM_MENUDROPALIGMENT"),    TEXT("Left or right menu drop"),
51     SM_PENWINDOWS,            TEXT("SM_PENWINDOWS"),            TEXT("Pen extensions installed"),
52     SM_DBCSENABLED,            TEXT("SM-DBCSENABLED"),            TEXT("Double-Byte Char Set enable"),
53     SM_CMOUSEBUTTONS,        TEXT("SM_CMOUSEBUTTONS"),        TEXT("Number of mouse buttons"),
54     SM_SECURE,                TEXT("SM_SECURE"),                TEXT("Security present flag"),
55     SM_CXEDGE,                TEXT("SM_CXEDGE"),                TEXT("3-D border width"),
56     SM_CYEDGE,                TEXT("SM_CYEDGE"),                TEXT("3-D border height"),
57     SM_CXMINSPACING,        TEXT("SM_CXMINSPACING"),        TEXT("Minimized window spacing width"),
58     SM_CYMINSPACING,        TEXT("SM-CYMINSPACING"),        TEXT("Minimized window spacing height"),
59     SM_CXSMICON,            TEXT("SM_CXSMICON"),            TEXT("Small icon width"),
60     SM_CYSMICON,            TEXT("SM_CYSMICON"),            TEXT("Small icon height"),
61     SM_CYSMCAPTION,            TEXT("SM_CYSMCAPTION"),            TEXT("Small caption height"),
62     SM_CXSMSIZE,            TEXT("SM_CXSMSIZE"),            TEXT("Small caption button width"),
63     SM_CYSMSIZE,            TEXT("SM_CYSMSIZE"),            TEXT("Small caption button height"),
64     SM_CXMENUSIZE,            TEXT("SM_CXMENUSIZE"),            TEXT("Menu bar button width"),
65     SM_CYMENUSIZE,            TEXT("SM_CYMENUSIZE"),            TEXT("Menu bar button height"),
66     SM_ARRANGE,                TEXT("SM_ARRANGE"),                TEXT("How minimized windows arranged"),
67     SM_CXMINIMIZED,            TEXT("SM_CXMINIMIZED"),            TEXT("Minimized window width"),
68     SM_CYMINIMIZED,            TEXT("SM_CYMINIMIZED"),            TEXT("Minimized window height"),
69     SM_CXMAXTRACK,            TEXT("SM_CXMAXTRACK"),            TEXT("Maximum draggable width"),
70     SM_CYMAXTRACK,            TEXT("SM_CYMAXTRACK"),            TEXT("Maximum draggable height"),
71     SM_CXMAXIMIZED,            TEXT("SM_CXMAXIMIZED"),            TEXT("Width of maximized window"),
72     SM_CYMAXIMIZED,            TEXT("SM_CYMAXIMIZED"),            TEXT("Height of maximized windwo"),
73     SM_NETWORK,                TEXT("SM_NETWORK"),                TEXT("Network present flag"),
74     SM_CLEANBOOT,            TEXT("SM_CLEANBOOT"),            TEXT("How system was booted"),
75     SM_CXDRAG,                TEXT("SM_CXDRAG"),                TEXT("Avoid drag x tolerance"),
76     SM_CYDRAG,                TEXT("SM_CYDRAG"),                TEXT("Avoid drag x tolerance"),
77     SM_SHOWSOUNDS,            TEXT("SM_SHOWSOUNDS"),            TEXT("Present sounds visually"),
78     SM_CXMENUCHECK,            TEXT("SM_CXMENUCHECK"),            TEXT("Menu check-mark width"),
79     SM_CYMENUCHECK,            TEXT("SM_CYMENUCHECK"),            TEXT("Menu check-mark height"),
80     SM_SLOWMACHINE,            TEXT("SM_SLOWMACHINE"),            TEXT("Slow processor flag"),
81     SM_MIDEASTENABLED,        TEXT("SM_MIDEASTENABLE"),        TEXT("Hebrew and Arabic enabled flag"),
82     SM_MOUSEWHEELPRESENT,    TEXT("SM_MOUSEWHEELPRESENT"),    TEXT("Mouse wheel present flag"),
83     SM_XVIRTUALSCREEN,        TEXT("SM_XVIRTUALSCREEN"),        TEXT("Virtual screen x origin"),
84     SM_YVIRTUALSCREEN,        TEXT("SM_YVIRTUALSCREEN"),        TEXT("Virtual screen y origin"),
85     SM_CXVIRTUALSCREEN,        TEXT("SM_CXVIRTUALSCREEN"),        TEXT("Virtual screen width"),
86     SM_CYVIRTUALSCREEN,        TEXT("SM_CYVIRTUALSCREEN"),        TEXT("Virtual screen height"),
87     SM_CMONITORS,            TEXT("SM_CMONITORS"),            TEXT("Number of monitors"),
88     SM_SAMEDISPLAYFORMAT,    TEXT("SM_SAMEDISPLAYFORMAT"),    TEXT("Same color format flag")
89 };

linux文件的类型:

  -   普通文件

  d   目录文件

  b   块设备

  c   字符设备

  l   符号链接文件

  p   管道文件pipe

  s   套接字文件socket

查看文件状态:stat

[root@bogon ~]# stat anaconda-ks.cfg 
  File: ‘anaconda-ks.cfg’
  Size: 1401          Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 101877942   Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:admin_home_t:s0
Access: 2017-05-01 05:41:12.625008626 +0800    ##访问时间,读取文件内容
Modify: 2017-05-01 05:41:12.630008626 +0800    ##修改时间,改变文件内容(数据)
Change: 2017-05-01 05:41:12.630008626 +0800    ## 改变时间,元数据发生改变
 Birth: -

touch命令:创建文件和刷新时间

         touch [OPTION]... FILE...

         -a    改变atime

         -m   改变mtime

         -t     STAMP:[[CC]YY]MMDDhhmm[.ss]

         -c     如果文件不存在,则不予创建

cp命令:复制        

图片 2

         -a    归档,等同于-dr

         -b    若删除或者覆盖目标文件,将对目标文件进行备份,备份文件以备份的字符串结尾

         -d    复制符号链接

         -f     强制复制

         -h    强制cp复制符号链接。缺省值是跟随符号链接,将文件复制到符号链接指向处。

         -i      交互式模式。覆盖目标文件之前先要进行询问

         -l      建立硬链接,而非复制

         -p    源目录或者文件的属性保留

         -r    处理指定目录以及子目录

复制/root目录下所以文件到/data目录,包括隐藏文件:

[root@bogon ~]# cp -r /root/. /data/
[root@bogon ~]# ls -a /data/
.   anaconda-ks.cfg  .bash_logout   .bashrc  .tcshrc
..  .bash_history    .bash_profile  .cshrc   .viminfo

移动和重命名:mv [选项]

                   -i       交互式

                   -f       强制,如果目标文件已经存在,不会询问而直接覆盖

        -b     若需覆盖文件,则覆盖前先行备份

[root@bogon ~]# ls
anaconda-ks.cfg  file1.txt
[root@bogon ~]# mv file1.txt /data/file2.txt
[root@bogon ~]# ls /data/
file2.txt      ##将file1移动到/data目录下重命名file2

删除文件: rm [选项]... file...

                   -i:  交互式

                   -f:  强制删除

                   -r:  递归删除目录树

[root@bogon ~]# ls /data/
file2.txt  testdir
[root@bogon ~]# rm -rf /data/*
[root@bogon ~]# ll /data/
total 0      ##删除/data目录下所以文件

显示目录树: tree

         -d:  只显示目录

         -L level :指定显示的层级数目

         -P pattern:  只显示由指定pattern 匹配到的

 显示“/”目录树,只显示一层:

[root@bogon ~]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── data
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var

创建目录:mkdir

         -p:  递归创建,且可自动创建所需的各目录;

         -v:  显示详细信息

         -m MODE:  创建目录时直接指定权限;

[root@bogon ~]# mkdir -m 700 test
[root@bogon ~]# ll
total 4
-rw-------. 1 root root 1401 May  1 05:41 anaconda-ks.cfg
drwx------. 2 root root    6 May  2 02:27 test

rmdir:删除空目录

         -p:  递归删除父空目录

         -v: 显示详细信息

链接文件:ln命令

  软连接与硬链接的区别:

    当删除源文件后,软连接将失效,但硬链接仍旧可用。

    软连接适用于文件或目录,但硬链接只可用于文件。

    软连接与原文件可以位于不同的文件系统中,但硬链接必须与原文件在同一个分区内。

   ln命令默认创建的是硬链接,创建软链接必须结合“-s”选项

[root@bogon ~]# ln -s /etc/httpd/conf/httpd.conf /etc
[root@bogon ~]# ll /etc/httpd.conf 
lrwxrwxrwx. 1 root root 26 May  2 02:47 /etc/httpd.conf -> /etc/httpd/conf/httpd.conf
[root@bogon ~]# ln  /var/log/messages /tmp/test
[root@bogon ~]# ll -h /tmp/test
-rw-------. 2 root root 574K May  2 02:46 /tmp/test

file命令:用来识别文件类型,也可用来辨别一些文件的编码格式

file [options] <filename>...

  -b 列出文件辨识结果时,不显示文件名称。

  -c 详细显示指令执行过程,便于排错或分析程序执行形

  -f 列出文件中文件名的文件类型

  -F 使用指定分隔符号替换输出文件名后默认的”:” 分隔符

  -i 输出mime 类型的字符串

  -L 查看对应软链接对应文件的文件类型

  -z 尝试去解读压缩文件的内容

  --help显示命令在线帮助

查看软连接对应文件的类型:

[root@bogon ~]# file -L /etc/httpd.conf 
/etc/httpd.conf: ASCII text

du命令:统计目录及文件的空间占用情况

  -a  统计磁盘空间占用的所以文件,而不仅仅只统计目录

  -h  以K,M单位显示

  -s  只统计某个参数所占用的空间,而不是统计每个子目录

[root@bogon ~]# du -sh /var/log/
3.3M    /var/log/
[root@bogon ~]# du -ah /boot/
4.0K    /boot/grub/splash.xpm.gz
4.0K    /boot/grub
0    /boot/grub2/themes/system
0    /boot/grub2/themes
4.0K    /boot/grub2/device.map
12K    /boot/grub2/i386-pc/acpi.mod

 

  • 切换一个数据库为当前数据库

图片 3图片 4

文件的两类数据:

         元数据:文件的属性

         数据:文件的内容

显示当前所在目录:

[root@bogon ~]# pwd
/root

切换目录:cd命令

  绝对路径:以根目录“/”作为起点,可以非常准确的表示一个目录或文件所在的位置,如果路径较长输入时会比较繁琐。

  相对路径:以当前工作目录作为起点,“.”表示当前工作目录,“..”表示上一级目录,“~”表示用户的宿主目录。

[root@bogon ~]# cd -    ##回到上一次的工作目录,实现两个工作目录间来回切换
/etc
[root@bogon etc]#cd -

文件通配符:

         * 匹配零个或多个字符

         ?  匹配任何单个字符

         ~  当前用户家目录

         ~username  用户家目录

         ~+  当前工作目录

         ~-  前一个工作目录

         [0-9] 匹配一个数字范围

         [a-z]   大写和小写字母

         [A-Z]   大写字母

         [wxc] 匹配列表中的任何的一个字符

         [^wxc]  匹配列表中的所有字符以外的字符

         预定义的字符类: #man 7 glob

         [:digit:]   任意数字,相当于0-9

         [:lower:]   任意小写字母

         [:upper:]   任意大写字母

         [:alpha:]   任意大小写字母

         [:alnum:]   任意数字或字母

         [:space:]   空格

         [:punct:]   标点符号

列出目录的内容或指定目录:

         ls命令:ls [options] [files_or_dirs]

                   -a     包含隐藏文件

                   -l      以长格式显示,ll

                   -R    目录递归显示

                   -d    目录和符合链接信息

                   -1      文件分行显示

                   -S     从大到小排序

      -i  显示文件索引节点

显示当前工作目录下的所以隐藏文件和目录:

[root@bogon ~]# ls -d .*
.  ..  .bash_history  .bash_logout  .bash_profile  .bashrc  .cshrc  .tcshrc  .viminfo

显示当前工作目录下的所以目录:

[root@bogon var]# ls -d */ 
adm/    crash/  empty/  gopher/    lib/    lock/  mail/  opt/       run/    tmp/
cache/  db/     games/  kerberos/  local/  log/   nis/   preserve/  spool/  yp/

显示/etc 目录下,所有.conf 结尾,且以m,n,r,p 开头的文件或目录

[root@bogon log]# ll /etc/[mnrp]*.conf 
-rw-r--r--. 1 root root 5171 Jun 10  2014 /etc/man_db.conf
-rw-r--r--. 1 root root  936 Mar  6  2015 /etc/mke2fs.conf
-rw-r--r--. 1 root root 1717 May  1 05:40 /etc/nsswitch.conf
-rw-r--r--. 1 root root   82 May  1 19:24 /etc/resolv.conf
-rw-r--r--. 1 root root  458 Nov 21  2015 /etc/rsyncd.conf
-rw-r--r--. 1 root root 3232 Sep  8  2015 /etc/rsyslog.conf

   

TAG标签:
版权声明:本文由澳门金莎娱乐网站发布于澳门金莎娱乐网站,转载请注明出处:文本输出,linux目录结构及文件管理