Linux的文件系统的基础目录、帮助、部分命令介绍
目录
-
linux基础目录
-
Linux获取帮助
-
相关控制命令,翻屏等
-
部分命令介绍
linux的基础目录
-
Bin: 共所有用户使用的基本命令,就是二进制程序
-
Sbin:系统的二进制程序。供管理员使用的
-
Boot:基本的加载器,引导加载器所依赖的各种静态文件
-
Dev:设备文件和特殊文件
-
其中设备分为两种类型,字符设备,块设备
-
字符设备:线性设备,比如磁带,键盘,显示器,就是有时序
-
块设备:就是随机存储设备,每次存取是有最小单位的。比如
-
磁盘, 硬盘等设备。
-
Etc:配置文件,系统程序的静态配置文件。 他也是有层级结构的。
-
opt:为这个目录下面的程序提供配置文件
-
x11 图形界面,可以不选
-
SGML和xml 不是很关键
-
红帽的做法是在这个目录下面创建一个和自己的应用程序同名的
-
文件夹,里面放上配置文件。这是一种比较好的做法。
-
Home:j家目录,这里是普通用户家目录的集中
-
Root:管理员的家目录
-
Lib:lib(64)库。基础共享库和内核模块。为bin 和sbin和系统运行过程中提供共享库的。例如,usr/lib 就是为 /usr/bin 和sbin提供共享库的。都表现为:
-
libc.so.*动态连接C库
-
ld*执行时连接器
-
Media:便携设备,软盘和刻录机等
-
Mnt:移动硬盘等,U盘,光盘等挂载点
-
Opt:第三方非关键程序的安装位置,现在一般程序都不愿意安装到这个地方。就是备胎
-
Srv: data for service provide by this system. 专门提供给运行在这个主机上的程序的数据。目录当前主机为服务提供的数据。一般用不到。
-
Tmp:为那些能产生临时数据的程序提供的目录。所有用户都能使用。
-
Usr:除了根以外最重要的目录。全局共享只读资源,这个用户不能创建目录,也是有层级结构
-
bin/sbin。为了更加丰富化的程序提供的。
-
lib,lib64.
-
include:C程序头文件。
-
share: 用户手册等数据。man,手册页都在这。
-
local:另一个层级目录 :让系统管理员安装本地程序,也通常用于安装第三方程序。
-
bin ,sbin,etc,share ,src 等。
-
Var。Variable hierarchy:层级路径: 经常发现数据变化的目录和文件管理和日志数据
-
cache 程序缓存 lib.程序的状态数据
-
lcoal,opt为usr /local,opt提供变化的数据
-
Run:运行进程的数据关联
-
tmp;系统重启后仍然需要保留的临时文件
-
Log.日志文件
-
proc:基于内存的内核和进程信息的虚拟文件系统。而且是存放内存的,关机丢失。他们多为内核参数,例如:net.ipv4.ip.forward.虚拟为/net/ipv4/forward/,存储于proc/sys 其完整路径/proc/sys/net/ipv4/forward/ 抽象出来的文件,为了不违反一切皆文件的设定。
-
Sys 用于挂载sysfs文件系统。 sysfs提供了一种比proc访问方式更为理想的访问形式。主要用来管理设备的。比如磁盘等。为管理linux设备,提供了一种统一模型的接口。 但是仍然无法取代proc
获取命令的使用帮助
-
man。这也是最重要的一种方式。 使用格式:man command ,这种方式出现的说明非常全面详细。如果对命令不了解可以详细查看。
-
man后面带的用户手册较多而且分多个章节,有的命令在不同章节都有介绍,而man如果不带参数默认只显示第一个查找到的。 如果想看这个命令都在那个章节有介绍,可以使用。
-
whatis command 命令,会显示出来这个命令在那些章节有介绍。
-
–help。如果对命令比较了解,可以使用–help,这里只会简短的说明命令的选项。
-
info
-
第三方软件自带的说明文档
-
发行版官方有自己的文档
-
一些帮助类的命令
-
which 显示文件(命令)完整路径
-
where 显示二进制程序文件,手册文件,和源码。 b 只搜索二进制程序路径
-m 只搜索使用手册文件路径 -
who -显示谁登录了 -b 此次系统启动时间 d 显示死亡进程 -r 运行级别
w:增强版的who命令
翻屏控制命令
man,或者是cat等显示较多内容的命令,如何进行翻屏控制呢 当man ls 资料很多的时候,或者cat配置文件很多的时候
-
向后 :翻一屏,空格,翻一行是 回车,翻半屏是 Ctrl+U (up的意思)
-
向前:翻一屏 b , 翻一行是k, 翻半屏是 ctrl+d (down的意思)
-
查找:
-
\,输入关键字。向后查找
-
? 输入关键字,向前查找
-
n与查找是相同的方向,N与查找是相反的方向
部分Linux命令介绍
-
ifconfig:用来配置网卡的命令
-
ifconfig [interface] 例如,ifconfig eth0 如果不写网卡名称,就直接列出服务器所有网卡信息(默认带lo环回网卡,不能做服务用,是系统默认创建的。),如果写明网卡,就是只单列那块网卡的信息,如eth0
-
ifconfig interface [aftype] options | address … interface 就是eth0 或者eth1,关键是options
-
up /down,就是启用网卡和停用网卡的意思。 ifconfig eth0 up 就起来了,那么down就是停用
-
[-]arp 加上- 停用这个网卡的arp服务。 ifconfig eth0 -arp那么带来的结果很明显,解析不到其他设备的mac地址了,等几秒钟缓存清空后,也就无法通讯了,和down的效果有点类似。 ifconfig eth0 arp 就是启用arp。
-
[-]promisc 就是混杂模式。带上- 就是停用。网卡的工作原理是收到数据帧后先对比目标mac地址是否和自己一样,一样接受,不一样就丢弃。开启这个模式只要收到就接收 具体参见 http://blog.chinaunix.net/uid-27105712-id-3792255.html
-
add addr/prefixlen。增加IP地址。经过测试,增加ip地址后也同样会增加一块网卡。就是增加一块虚拟网卡。每增加一个ip,就会增加一块虚拟网卡。ifconfig的时候能看到多了个eth0:0网卡。eth0 后面的:0是第一块虚拟网卡的意思。
-
del addr/prefixlen。就是删除ip。可以删除本机的ip。但是那样会造成通讯中断。可以删除刚才添加的虚拟网卡。eth0:0 。命令ifconfig eth0:0 del (ip地址)
-
echo:用于显示一段文本。回显用的。
-
-n 输出后不换行
-
-e 使反斜杠生效。就是让转义字符生效了。 echo "this is a \n good day." 会原样输出 echo -e "this is a \n good day."会让a后面有个换行,就是分了两行。
-
-E 就是使转义字符失效。echo命令默认带的。
-
-e生效后,下面的参数都可以使用了。
* \\ 如果希望输出 \本身的话。 * \b 退格命令。带上输出后,左侧字符会被吃掉。其右侧必须有字符。否则不生效。实验过。 * \c echo 输出默认会换行,\c 后,不换行。 * \n 换行。 * \a 会有报警声音。命令比较多不一一描述。 * carriage return。回车。这里解释一下linux系统里,每行结尾只有“<换行>”,即“\n”; Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”; Mac系统里,每行结尾是“<回车>”。 一个直接后果是,linux/Mac系统下的文件在Windows里打开的话,所有文字会变成一行; 而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能 会多出一个^M符号。
-
echo [SHORT-OPTION]… [STRING]…
-
echo LONG-OPTION
-
用法:就是长 短选项之分
-
short-option:短选项。之前说过吧,短的用-
-
tty。命令很简单,就是显示已经链接到标准输入终端的文件名。就是显示当前连接的终端类型和编号。可以这么认为。
终端类型:这里说明一下。终端就是用户与主机进行交互的一种介质(方式),可以是虚拟的,也可以是实体的。 搞怪:既然一切皆文件,使用管道命令的时候可以这么玩 echo "hello" >>/dev/pts/1 发给其他终端信息。一切皆文件
-
控制台终端(/dev/console):在Linux系统中,计算机显示器通常被称为控制台终端。Console与虚拟终端相关联,内核将信息送到控制台终端上(/dev/console), 通过与console相关联的虚拟终端将信息显示到屏幕上。
-
虚拟终端(/dev/tty):虚拟终端是一个应用程序的概念。TTY可以有N个,/dev/tty就是我们使用的终端
-
串口终端(/dev/ttyS#):串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。这些串行端口对应的设备文件名是在Linux的/dev/ttyS#。
-
图形终端:属于虚拟终端,但会提供桌面环境如:Gnome、KDE、Xfce、lxde。
-
伪终端(/dev/pts/#):在图形界面打开的命令行以及基于ssh协议或Telnet协议等远程打开的界面,称为模拟终端(伪终端),在Linux系统中的文件路径为/dev/pts/#(#表示数字)。常见的软件有xshell、putty。
-
startx。是启动图形界面的。一般用不到。使用时,startX即可启动
-
export。内部命令。和变量有关的一个命令。详细可以参考 http://blog.csdn.net/wl_fln/article/details/7258294
-
一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原来脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。
-
登录到系统后,系统将启动一个用户shell。在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序。运行shell脚本程序时,系统将创建一个子shell。此时,系统中将有两个shell,一个是登录时系统启动的shell,另一个是系统为运行脚本程序创建的shell。当一个脚本程序运行完毕,它的脚本shell将终止,可以返回到执行该脚本之前的shell。从这种意义上来说,用户可以有许多shell,每个shell都是由某个shell(称为父shell)派生的。这就是有的时候在shell中可以引用的变量,在脚本中却无法引用的原因。
-
export [-fnp][变量名称]=[变量设置值]
-
例子:export PATH=$PATH:/opt/au1200rm/buildtools/bin
-
-f 代表[变量名称]中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p 列出所有的shell赋予程序的环境变量。只输入export 和export -p效果一样。
-
pwd显示当前的工作目录
pwd -p 显示实际物理路径,而不是连接。如果你用快捷方式连接过去的话,这个命令比较有用。
-
history 显示使用过的历史命令。自动记录过去执行的一些命令,保存在内存的一块区域。在bash特性1中会有更详细描述
-
-c 清空整个命令历史
-
-d 删除指定的命令历史
-
-d 500 10 删除第500后面10个 如果用户正常退出,内存中存放的历史命令会保存到用户家目录的文件中
-
-w 保存命令历史至历史文件中。
-
ESC + . (esc松开后按点)引用前一个命令的最后一个参数
-
shutdown 关机命令
-
-r 关机后重启
-
-c 终止关机命令
-
-k 仅仅发送关机警告,并不真关机。这里有个格式 shutdown -k 1 "hello" 提示1分钟关机
-
-h(H,P)。关机后关闭电源。shutdown -h 1 ;1分钟后关机
-
poweroff。重启或关机
-
-f 强制重启或停止,不调用shutdown命令。相当于掉电。
-
-p 也是强制关机,你执行这个命令后直接开始关机
-
reboot 和poweroff一样,参数也是
-
hwclock(clock)
-
-r 读取硬件时间
-
–set 设置硬件时间 需要同时使用date参数。 hwclock –set –date="9/22/2016 16:45:05"
-
–date 格式同上。
-
-s (–hctosys)把硬件时间写到系统时间内。hc to sys
-
-w (systohc)把系统时间写到硬件内。sys to hc
-
其他关于时区的设置等等用的很少,不解释了。
-
date 设置、查看系统时间
-
date [OPTION]… [+FORMAT].这种显示的格式非常多
* %d day of month * %D date; same as %m/%d/%y * %F full date; same as %Y-%m-%d * %H hour (00..23) * %I hour (01..12) * %j day of year (001..366) * %m month (01..12) * %M minute (00..59) * %n a newline * %S second (00..60) * %Y year 2016 * %y year 16 * %u day of week (1..7); 1 is Monday * 例子如下:date +这个月是%m月,日期是%d,年是%Y,星期%u,时间是%H点%M分%S秒%n或者是%T%n也可以说是%D或者是%F 结果如下 这个月是10月,日期是29,年是2016,星期6,时间是11点46分51秒 或者是11:46:51 也可以说是10/29/16或者是2016-10-29
-
date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
* -d。 不显示真实的时间,而是根据用户给出的时间进行显示 date -d "10:20:31" 结果 Sat Oct 29 10:20:31 PDT 2016 date -d "2016/9/20 10:20:31" 结果 Tue Sep 20 10:20:31 PDT 2016 * -s(--set)。设置系统时间 格式如上,就是把-d换成-s
原创文章,作者:haoyp,如若转载,请注明出处:http://www.178linux.com/55501
评论列表(1条)
内容格式把握得很好,不错,希望你能熟知基础命令知识,加油