感谢支持
我们一直在努力

Linux文件系统层次结构分析、目录管理、文件管理、日期管理常用命令使用

在Linux系统管理中,我们常常管理目录(mkdir、rmdir 、tree、ls、cd)文件管理(touch 、rm、cp、mv、stat),时钟管理(date、clock、hwclock)让我们一起来学习Linux吧。

Linux的基本原则:

1、由目的单一的小程序组成;组合小程序完成复杂任务;
2、一切皆文件;
3、尽量避免捕获用户接口;
4、配置文件保存为纯文本格式;

GUI接口:
CLI接口:
命令提示符,prompt, bash(shell)
#: root
$: 普通用户
命令:

命令格式:
命令 选项 参数
选项:
短选项: –
多个选项可以组合:-a -b = -ab
长选项: —
参数:命令的作用对象

su: switch user
# su [-l] 用户名

passwd:
功能:设置密码
密码要求:
1、使用4种类别字符中至少3种;
2、足够长,大于7位;
3、使用随机字符串;
4、定期更换;
5、循环周期足够大;

 

Shell:
GUI: Graphic User Interface (图形用户界面)
Windows
Linux:X-Window (X指的是协议)
Gnome:C
KDE:C++
Xface <轻量级>
CLI: Command Line Interface (命令行界面)
sh
bash
csh
ksh
zsh
tcsh

login:
用户名:用户ID
用户名的命名规则:
1、长度不能超过255个字符;
2、不能使用/当文件名
3、严格区分大小写

认证机制:Authentication
授权:Authorization
审计:Audition (日志)

获得命令的使用帮助:
内部命令:
help COMMAND
外部命令:
COMMAND –help

命令手册:manual
man COMMAND

whatis COMMAND
显示命令摘要信息。
man date
DATE(1)
分章节:
1:用户命令(/bin, /usr/bin, /usr/local/bin):用户可以操作的命令或可执行文件。
2:系统调用:system call:系统核心可调用的函数与工具等。
3:库用户:一些常用的函数(function)与函数库(library)
4:特殊文件(设备文件):设备文件的说明。
5:文件格式(配置文件的语法):设置文件或某些文件格式。
6:游戏
7:杂项(Miscellaneous)
8: 管理命令(/sbin, /usr/sbin, /usr/local/sbin):系统管理员可用的管理命令。

MAN:
man page的内容页分成好几个部分来介绍。前面man date的表格内,以NAME作为开始,以一个SEE ALSO作为结束。

NAME:命令名称及功能简要说明
SYNOPSIS:用法说明,包括可用的选项
DESCRIPTION:命令功能的详尽说明,可能包括每一个选项的意义
OPTIONS:说明每一个选项的意义
COMMANDS:当这个程序在执行的时候,可以在此程序(软件)中发出的命令
FILES:此命令相关的配置文件
BUGS:是否有相关的错误
EXAMPLES:使用示例
SEE ALSO:另外参照(与这个命令或数据相关的其它参考说明)

翻屏:
向后翻一屏:SPACE(空格键)
向前翻一屏:b
向后翻一行:ENTER
向前翻一行:k

查找:
/KEYWORD: 向后
n: 下一个
N:前一个

?KEYWORD:向前
n: 下一个
N:前一个

当我们不再使用当前manpage文档时,可选择q键退出。

在线文档:
info COMMAND

文档:/usr/share/doc

prompt,命令提示符:
# command options… arguments…

选项:修改命令执行的特性
短选项
长选项
参数:指定命令作用对象

文件系统(File system)
Linux目录配置标准:
FHS(Filesystem Hierarchy Standard文件系统层次标准)
/boot: 系统启动相关的文件,如内核、initrd,以及grub(bootloader)
/dev: 设备文件
设备文件:字符设备、块设备
块设备:(硬盘、光盘)随机访问,数据块
字符设备:(键盘、鼠标)线性访问,按字符为单位
设备号:主设备号(major device number)和此设备号(minor device number)
系统核心就是通过这两个号码来判断设备的。
/etc:配置文件
/home:默认用户的家目录,每一个用户的家目录通常默认为/home/USERNAME
~:表示当前用户的家目录
~USERNAME:则表示USERNAME的家目录
/root:管理员的家目录;
/lib:系统使用的函数库目录
静态库, .a
动态库, Windows(.dll), Linux(.so:shared object)
/lib/modules:内核模块文件
/media:挂载点目录,移动设备
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录 -> /usr/local/
/proc:伪文件系统,内核映射文件
/sys:伪文件系统,跟硬件设备相关的属性映射文件
/tmp:临时文件, /var/tmp
/var:系统执行过程中经常变化的文件
/bin: 可执行文件, 用户命令
/sbin:管理命令
/lost+found:系统发生错误时,会将一些遗失的片段放置此目录
/usr:shared, read-only (全局共享只读)
系统主要程序、图形界面所需要的文件、额外的函数库、本机自行安装的软件、共享目录与文件
/usr/bin、/usr/sbin:一般身份和管理员可执行的文件
/usr/lib:各应用软件的函数库文件

/usr/local:
/usr/local/bin
/usr/local/sbin
/usr/local/lib

date:时间管理
Linux: rtc

硬件时钟:clock hwclock
系统时钟: date

hwclock
-w: 以系统时间为准,将硬件时间改为系统时间。
-s: 以硬件时间为准,将系统时间改为硬件时间。
For example:
如果系统时间是准确的,硬件时间是不准确的,那我们如何将系统时间和硬件时间改为一致呢
# hwclock -w 即可将硬件时间改为系统时间。
cal: calendar
显示日历
查看2013年2月份的日历
# cal 2 2013

list: ls (列出指定路径所有子目录或文件)
列出,列表

# ls -l
-rw——- 1 root root 1473 Feb 26 01:01 anaconda-ks.cfg
-l:长格式(显示完整信息)
文件类型:
-:普通文件 (f)
d: 目录文件
b: 块设备文件中可供存储的接口设备(block)
c: 字符设备文件,如:键盘、鼠标 (character)
l: 符号链接文件(symbolic link file)
p: 命令管道文件(pipe)
s: 套接字文件(socket)
文件权限:9位,每3位一组 rwx(读(read),写(write),执行(excute))
第一组:拥有者的权限(owner)
第二组:同组的权限(group)
第三组:其它非本用户组的(other)
文件硬链接的次数
文件的属主(owner)
文件的属组(group)
文件大小(size),单位是字节
时间戳(timestamp):最近一次被修改的时间
访问:access
修改:modify,文件内容发生了改变
改变:change,metadata,元数据
-h:做单位转换(KB、GB)
-a: 显示以.开头的隐藏文件
. 表示当前目录
.. 表示父目录
-A:除.和..以外的当前目录的所有文件(包括隐藏文件)。
-d: 显示目录自身属性
-i: index node, inode 显示文件的索引节点
-r: 逆序显示
-R: 递归(recursive)显示(将当前目录中的子文件及子目录显示)
-S:按文件大小排序
–full-time:以完整的时间模式(年、月、日、时、分)输出
cd: Change Directory
功能:切换工作目录
选项:
~USERNAME: 进入指定用户的家目录
-: 表示前一个工作目录
.:表示当前目录
..:表示上一层目录
~:表示“当前用户身份”所在的家目录
For example
如果我们当前处在的目录是/root,我现在想进入/home目录,该如何操作?
# cd /home
# cd ../home 两者都可以进入/home目录

pwd: Printing Working directory
功能:显示当前工作目录
选项:
-P:显示出实际路径,而非使用连接(link)路径

命令类型:
内置命令(shell内置),内部,内建
外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件

type: Bash Shell的内置命令
-t:type会显示name是外部命令还是bash内部命令
file:表示为外部命令
alias:表示命令为命令别名所设置的名称
builtin:表示该命令为bash内置的命令名称
-a:在PATH变量定义的路径中,列出所有含有name的命令,包含alias
type也可以用来查找命令,类此which命令的作用
For example:
[root@station16 ~]# type -p touch
/bin/touch

file命令及其用法。
辨别文件内容类型
-b:列出辨别结果时,不显示文件名称。
-c:详细显示指令执行过程,便于排错或分析程序执行的情形。
-v:显示版本信息。
For example
我想查看/etc/passwd文件的类型
# file -b /etc/passwd
/etc/passwd: ASCII text 表示/etc/passwd是纯文本文件

目录创建和删除

mkdir:(make directory)
功能:创建空目录
选项:
-p(parents):若所要建立目录的上层目录尚未建立,则会一并建立上层目录。
-v(verbose):执行时显示详细的信息
-m(mode):设置目录权限

For example:
一、在/mnt/test/aa/bb,cc目录并显示详细信息
# mkdir -pv /mnt/text/{aa/bb,cc}
二、创建a_b,a_c,d_b,d_c
# mkdir -pv {a,d}_{b,c}
# tree:查看目录树

rmdir:(remove directory)
功能:删除空目录
选项:
-p(parents):删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除。

文件创建和删除

touch:
功能:修改文件的时间戳
选项:
-a: 只更改访问时间
-m:只更改修改时间
-t:修改指定时间,而非现在时间
-c:不建立任何文件
stat
功能:显示文件或文件系统状态

删除文件:rm
-i:交互式模式,删除前询问是否操作
-f:强制删除文件或目录
-r:递归删除

复制(copy)和移动文件(move)
功能:复制文件或目录,还可以建立连接文件(快捷方式)
cp SOURCE DEST
cp file1 file2 file3
文件 文件 目录
选项:
-r:递归处理(将指定目录下的文件与子目录)
-i(interactive):交互:覆盖前询问
-f:
-u:目标文件与源文件有差异时,才复制
-l:建立硬链接(hard link)的连接文件,而非复制文件本身
-s:复制成符号连接文件(symbolic link),即快捷方式
-p:与文件的属性一起复制,而非默认属性
-a:归档复制,常用于备份
For example:
复制文件/etc/passwd文件到/tmp目录下,并将它做成软连接lpasswd
# cp -s /etc/passwd /tmp/lpasswd
[root@localhost tmp]# cp -s /etc/passwd /tmp/lpasswd
t@localhost tmp]# ll
l 4
rwxrwx 1 root root 11 Feb 27 19:06 lpasswd -> /etc/passwd
t@localhost tmp]#

mv: move
功能:移动文件与目录、重命名
选项:
-f:强制直接移动而不询问
-i:若目标文件(destination)已经存在,就会询问
-u:若目标文件存在,且源文件比较新,才会更新(update)
-t DEST SRC
For example:
将/tmp/passwd命名为password
# mv passwd password

du:(estimate file space usage)
功能:判断文件空间使用功能
选项:
-s(summarize):仅显示总计
-h(human-readable):以K、M、G为单位显示
-m(megabytes):以MB为单位显示
-a(all):显示目录中文件的大小
For example:
查看/etc下所有目录文件总大小
# du -sh /etc
112MB /etc

赞(0) 打赏
转载请注明出处:服务器评测 » Linux文件系统层次结构分析、目录管理、文件管理、日期管理常用命令使用
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏