ls -l命令详解

ls -l命令详解
ls -l命令详解

有几个字段老是记不住,就记载这里吧

ls -l 列表信息详解

我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思

以笔者电脑的/root目录为例:

[root@gucuiwen root]# ll

总用量 4055

-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg

drwxr-xr-x 2 root root 208 12月 1 13:50 babylinux

-rw-r--r-- 1 root root 1474560 11月 25 15:02 babylinux.img

-rw-r--r-- 1 root root 26829 11月 25 15:10 babylinux.png lrwxrwxrwx 1 root root 9 1月 4 11:06 disk1.link.png -> disk1.png -rw-r--r-- 1 root root 3209 11月 26 12:07 disk1.png

-rw-r--r-- 1 root root 692 11月 26 13:16 disk2.png

-rw-r--r-- 1 root root 718 11月 26 13:30 disk3.png

drwx------ 8 root root 392 1月 4 08:40 evolution

-rwxr-xr-x 1 root root 13695 11月 30 16:51 fangkuai.sh

drwxr-xr-x 2 root root 208 12月 28 12:06 FreeBSD

-rw-r--r-- 1 root root 2315 11月 25 17:19 getMBR.png

brw-r----- 1 root root 3, 1 1月 4 11:06 hda1

drwxr-xr-x 2 root root 296 12月 31 11:53 htmls

-rw-r--r-- 1 root root 21369 11月 24 18:12 install.log

-rw-r--r-- 1 root root 3024 11月 24 18:12 install.log.syslog

-rw-r--r-- 1 root root 293 1月 4 10:51 ls.txt

-rw-r--r-- 1 root root 2237702 11月 25 15:09 magick.miff

-rw-r--r-- 1 root root 13493 11月 25 17:31 mbr1.png

-rw-r--r-- 1 root root 8123 11月 25 17:42 mbr2.png

-rw-r--r-- 1 root root 512 11月 30 16:10 mbr.dat

-rw-r--r-- 1 root root 64512 11月 26 15:33 partition.doc

-rw-r--r-- 1 root root 49887 11月 26 15:32 partition.sxw

-rw-r--r-- 1 root root 1541 12月 18 13:14 passwd

-rw-r--r-- 1 root root 46320 11月 25 17:28 Screenshot-1.png

-rw-r--r-- 1 root root 44145 11月 25 17:32 Screenshot-2.png

-rw-r--r-- 1 root root 43732 11月 25 17:13 Screenshot.png

drwxr-xr-x 3 root root 72 1月 4 10:49 test

-rw-r--r-- 1 root root 0 12月 18 10:44 tset

crw-r----- 1 root root 4, 65 1月 4 11:08 ttyS1

-rw-r--r-- 1 root root 9754 12月 1 11:25 X.sxw

-rw-r--r-- 1 root root 8704 11月 29 12:22 员工信息.xls

-rw-r--r-- 1 root root 19456 11月 26 17:14 搬千计划.xls

可以看到,用ls -l命令查看某一个目录会得到一个9个字段的列表.

#######################

第1行:总用量(total)

#######################

这个数值是该目录下所有文件及目录列表第5个字段的和(以k为单位),也就是该目录的大小.请注意和该目录下的文件和子目录下文件的总合做区分.这个数

字和du /root 得到的数字的大小是不一样的.可以用awk命令来验证.

用awk累加第5字段得到的数值:

[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print sum}' 4104092

转化成以K为单位:

[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print

sum/1024}'

4007.9

用ls -l得到的数值:

总用量 4055

用du -sh /root得到的数值:

[root@gucuiwen root]# du -sh /root

127M /root

可以看到累加第5个字段得到的值和total显示的是一样的(因为具体算法的不同,略微有差别).得到的数值实际上是root目录的大小(把root目录看成是一

个特殊的文件,就可以理解什么是目录的大小).而用du得到的数值是root目录下所由文件和子目录下全部文件的大小的总合.

########################

第1字段:

文件属性字段

########################

文件属性字段总共有10个字母组成,第一个字母表示文件类型,如果这个字母

是一个减号"-",则说明该文件是一个普通文件.字母"d"表示该文件是一个目

录,字母"d",是dirtectory(目录)的缩写.请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息.

如果该字母是"l",表示该文件是一个符号链接.符号链接的概念类似于windows 里的快捷方式.字母"l"是link(链接)的缩写.在UNIX类系统中,一个文件可以有多个文件名,一个文件的多个文件名之间互称为硬链接(hard link).这些文件头可以指向同一个文件,删除其中一个文件名并不能删除该文件,只有把指向该文件的所有硬链接都删除,这个文件所占用的空间才真正被释放,该文件才真正被删除.这和windows是有很大区别的,windows中不允许一个文件有两个以上文件名,如果存在这中情况,则被认为是文件系统错误.如果你以前在windows 下玩过DEBUG就知道,可以用DEBUG修改一张软盘上的根目录,使一个文件同时具有两个文件名.但是修改好后用 scandisk监测的时候会被认为是交叉链接错误.

开头为b的表示块设备文件(block),,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件.它的没有文件大小,只有一个主设备号和一个辅设备号.上面的hda1就是一个设备文件,具有主设备号3和辅设备号1.表示第一个硬盘第一个分区.

另外,如果第一个字母为c表示该文件是一个字符设备文件(character),一次传输一个字节的设备被称为字符设备,比如键盘,字符终端等,传输数据的最小单位为一个字节.一次传输数据为一整块的被称为块设备,比如硬盘,光盘等.最小数据传输单位为一个数据块(通常一个数据块的大小是512字节).

第一字段的后面9个字母表示文件的权限.

r表是读 (Read)

w表示写 (Write)

x表示执行 (eXecute)

其中前三个表示文件属主的权限,中间三个表示组用户权限,最后三个表示其他用户权限.

比如:

-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg

表示文件的拥有者root对文件有读写权限,其他人(同组用户和其他用户只有读的权限)

另外,权限组还有一些特殊的表示法.比如/usr/X11R6/bin/XFree86具有如下权限:

[root@gucuiwen root]# ll /usr/X11R6/bin/XFree86

-rws--x--x 1 root root 1960262 2003-02-28 /usr/X11R6/bin/XFree86

其中的s表示这个是网络接口程序"s"是socket的缩写.该程序在运行过程中会

打开一个网络接口.

其他UNIX类系统如FreeBSD中还有t权限,表示一个临时(temporary)文件

在freeBSD中用ls -l /tmp 可以看到这样的权限:

drwxrwxrwt

它的最后一位是字母"t"

###############################

第2字段

文件硬链接数或目录子目录数

###############################

如果一个文件不是目录那么这一字段表示,这个文件所具有的硬链接数,即这个文件总共有多少个文件名.查看第一个文件:

-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg

第2字段的值为1,说明这个文件只有anaconda-ks.cfg这一个文件名.即只有一个指向该链接的硬链接.

如果我用ln,做一个指向该文件的硬链接再查看该文件,该文件的第2字段就会变成2:

[root@gucuiwen root]# ln anaconda-ks.cfg anaconda-ks.cfg.hardlink [root@gucuiwen root]# ls -l

总用量 4071

-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg

-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg.hardlink

此时,anaconda-ks.cfg 和anaconda-ks.cfg.hardlink 称为互为硬链接.他们指向同一个文件,无论是修改哪一个文件,另一个里也做相应的变化,因为实际上他们指向同一个文件.

用ls -i anaconda-ks.cfg可以查看它的文件节点(inode)

互为硬链接的文件具有相同的文件节点. 以下是验证实验:

[root@gucuiwen root]# ls -i anaconda-ks.cfg

18102 anaconda-ks.cfg

[root@gucuiwen root]# ls -i anaconda-ks.cfg.hardlink

18102 anaconda-ks.cfg.hardlink

可以看到,这两个文件具有相同的文件节点号:18102

如果你知道一个文件有多个文件名,如何查找他的其他文件名分布在什么地方

呢?

可以先用ls -i 获得它的节点号,然后用find查找,如

/etc/sysconfig/networking/devices/ifcfg-eth0就具有多个文件名,我要查找与它互为硬链接的文件:

[root@gucuiwen devices]# ls -i

/etc/sysconfig/networking/devices/ifcfg-eth0

147181 /etc/sysconfig/networking/devices/ifcfg-eth0

得到它的节点号为 147181

再用find查找:

[root@gucuiwen devices]# find /etc -inum 147181

/etc/sysconfig/networking/devices/ifcfg-eth0

/etc/sysconfig/networking/profiles/default/ifcfg-eth0

这样就得到了同一个文件的不同文件名的位置.

*************************************

如果是一个目录,第2字段的含义:

**************************************

如果是一个目录,则第2字段表示该目录所含子目录的个数.

新建一个空目录,这个目录的第二字段就是2,表示该目录下有两个子目录.为什么新建的目录下面会有两个子目录呢?

因为每一个目录都有一个指向它本身的子目录"." 和指向它上级目录的子目录"..",这两个默认子目录是隐藏的.用ls -a可以看到.

每次在目录下新建一个子目录,该目录第2字段的值就增1,但是新建一个普通文件该字段值不增加.

###############################

第3字段:

文件拥有者

###############################

该字段表示这个文件是属于哪个用户的.UNIX类系统都是多用户系统,每个文件都有它的拥有者.只有文件的拥有者才具有改动文件属性的权利.当然, root用户具有改动任何文件属性的权利.对于一个目录来说,只有拥有该目录的用户,或者具有写权限的用户才有在目录下创建文件的权利.

如果某一个用户因为某种原因,被删除,而该用户的文件还存在,那么用ls -l

查看该文件将显示一个代表用户存在前ID号的数字.

以下是演示:

先创建一个用户并用su过去:

[root@gucuiwen root]# useradd gucuiwen -g users

[root@gucuiwen root]# su - gucuiwen

用新建的用户创建一个测试文件:

[gucuiwen@gucuiwen gucuiwen]$ touch testfile

[gucuiwen@gucuiwen gucuiwen]$ ls -l testfile

-rw-r--r-- 1 gucuiwen users 0 1月 4 16:31 testfile

最后用ls -l 看到第三字段的文件拥有者为gucuiwen

然后我将gucuiwen用户删除:

[root@gucuiwen root]# userdel gucuiwen

[root@gucuiwen root]# cd /home/gucuiwen/

[root@gucuiwen gucuiwen]# ls -l

总用量 0

-rw-r--r-- 1 501 users 0 1月 4 16:31 testfile

可以看到,第三字段成了一个数字,这个数字是原gucuiwen用户的ID号.因为文件系统对每个文件记录文件所有者的ID,而非用户名.

###############################

第4字段:

文件拥有者所在的组

###############################

组的概念可以想像成是一个共同完成一个项目的团队.通过组的概念,可以控制文件让特定的用户查看,修改或运行.而不是一棍子打死,要么全不让看,要么全让看.

一个用户可以加入很多个组,但是其中有一个是主组,就是显示在第4字段的明称.

可以在adduser的时候用-g指定该用户所在的主组,用-G指定其他组.

###############################

第5字段:

文件文件大小(以字节为单位)

###############################

第5字段表示文件大小,如果是一个文件夹,则表示该文件夹的大小.请注意是文件夹本身的大小,而不是文件夹以及它下面的文件的总大小!

很多人不能理解文件夹是一个特殊的文件的含义,这样的话理解文件夹大小的含义就比较困难了.

###############################

第6字段:

文件创建月份

###############################

这个不必多说了.

###############################

第7字段:

文件创建日期

###############################

###############################

第8字段:

文件创建时间

###############################

文件创建的时间可以通过touch命令来修改.如:

#touch testfile

可以把testfile的创建时间修改为当前时间.

touch的详细用法请看链接文档.

#man touch

另外,一个文件还有最后访问时间,最后修改时间等属性.

这些属性可以用ls 的其它参数显示出来.

###############################

第9字段:

文件名

###############################

如果是一个符号链接,那么会有一个 "->" 箭头符号,后面根一个它指向的文件名.

ls命令详解

ls命令详解.txt心脏是一座有两间卧室的房子,一间住着痛苦,一间住着快乐。人不能笑得太响,否则会吵醒隔壁的痛苦。ls命令是Linux常用命令之一,ls命令的作用和windows系统的dir命令类似,下面我们详细介绍一下ls命令的使用方法: ls是英文单词list的简写,其功能为列出目录的内容。这是用户最常用的一个命令之一,因为用户需要不时地查看某个目录的内容。该命令类似于DOS下的dir命令。 语法:ls [选项] [目录或是文件] 对于每个目录,该命令将列出其中的所有子目录与文件。对于每个文件,ls将输出其文件名以及所要求的其他信息。默认情况下,输出条目按字母顺序排序。当未给出目录名或是文件名时,就显示当前目录的信息。 命令中各选项的含义如下: - a 显示指定目录下所有子目录与文件,包括隐藏文件。 - A 显示指定目录下所有子目录与文件,包括隐藏文件。但不列出“.”和“..”。 - b 对文件名中的不可显示字符用八进制逃逸字符显示。 - c 按文件的修改时间排序。 - C 分成多列显示各项。 - d 如果参数是目录,只显示其名称而不显示其下的各文件。往往与l选项一起使用,以得到目录的详细信息。 - f 不排序。该选项将使lts选项失效,并使aU选项有效。 - F 在目录名后面标记“/”,可执行文件后面标记“*”,符号链接后面标记“@”,管道(或FIFO)后面标记“|”,socket文件后面标记“=”。 - i 在输出的第一列显示文件的i节点号。 - l 以长格式来显示文件的详细信息。这个选项最常用。 每行列出的信息依次是:文件类型与权限链接数文件属主文件属组文件大小建立或最近修改的时间名字 对于符号链接文件,显示的文件名之后有“—〉”和引用文件路径名。 对于设备文件,其“文件大小”字段显示主、次设备号,而不是文件大小。 目录中的总块数显示在长格式列表的开头,其中包含间接块。 - L 若指定的名称为一个符号链接文件,则显示链接所指向的文件。 - m 输出按字符流格式,文件跨页显示,以逗号分开。 - n 输出格式与l选项相同,只不过在输出中文件属主和属组是用相应的UID号和 GID 号来表示,而不是实际的名称。 - o 与l选项相同,只是不显示拥有者信息。 - p 在目录后面加一个“/”。 - q 将文件名中的不可显示字符用“?”代替。 - r 按字母逆序或最早优先的顺序显示输出结果。 - R 递归式地显示指定目录的各个子目录中的文件。 - s 给出每个目录项所用的块数,包括间接块。 - t 显示时按修改时间(最近优先)而不是按名字排序。若文件修改时间相同,则按字典顺序。修改时间取决于是否使用了c或u选顶。缺省的时间标记是最后一次修改时间。 - u 显示时按文件上次存取的时间(最近优先)而不是按名字排序。即将-t的时间标记修改为最后一次访问的时间。 - x 按行显示出各排序项的信息。 用ls - l命令显示的信息中,开头是由10个字符构成的字符串,其中第一个字符表示

用netsh命令配置DHCP服务

命令行方式安装DHCP服务器 一台windows 2000/03 server,单机环境,安装了dhcp服务,让我们用命令行的方式来配置一台DHCP_blank空白>服务器吧! 1、首先进入命令行dhcp配置模式 F:\>netsh netsh>dhcp dhcp>server 192.168.0.1;(192.168.0.1)是你需要管理的DHCP服务器的地址dhcp server> 2、dhcp server>show scope 作用域总的数目: 0 命令成功完成。 察看目标上作用域配置的情况,此时是没有scope的 3、添加一个scope dhcp server>add scope 192.168.0.0 255.255.255.0 192.168.0.0 MyComment 4、dhcp server>scope 192.168.0.1 将当前作用域上下文改变到 192.168.0.1 作用域。 5、dhcp server scope>add iprange 192.168.0.2 192.168.0.254 DHCP 添加一个分配地址范围 6、dhcp server scope>add excluderange 192.168.0.1 192.168.0.1

dhcp server scope>add excluderange 192.168.0.241 192.168.0.254 添加两个排除范围192.168.0.1,192.168.0.241-192.168.0.254 7、dhcp server scope>add reservedip 192.168.0.240 08002b30369B Mr.Wu Mr.wu both 添加一个保留ip,给了MAC 08002b30369B ,保留的名字称为Mr.Wu 8、dhcp server scope>set optionvalue 003 ipaddress 192.168.0.1 dhcp server scope>set optionvalue 006 ipaddress 192.168.0.1 在这个scope中添加两个作用域选项003路由器和006 DNS服务器 9、dhcp server scope>set reservedoptionvalue 192.168.0.240 003 ipaddress 192.168.0.1 设置保留地址192.168.0.240的作用域选项003 现在scope 192.168.0.0配置结束了,你也可以配置别的选择的项目,看你的需要了 此时在mmc中把scope 192.168.0.0刷新一下,一切都正常了 10、同样方法配置两个scope 192.168.1.0和192.168.2.0 11、配置superscope F:\>netsh netsh>dhcp dhcp>server 192.168.0.1 dhcp server>scopt 192.168.0.0 dhcp server scope>set superscope 192.168.0-192.168.2 1 F:\>netsh netsh>dhcp

linux常用命令

新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握。 由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握。本章我们就来介绍Linux的常用基本命令。 Linux常用命令 1.Linux命令基础 Linux区分大小写。在命令行(shell)中,可以使用TAB键来自动补全命令。即可以输入命令的前几个字母,然后按TAB键,系统自动补全命令,若不止一个,则显示出所有和输入字母相匹配的命令。 按TAB键时,如果系统只找到一个和输入相匹配的目录或文件,则自动补全;若没有匹配的内容或有多个相匹配的名字,系统将发出警鸣声,再按一下TAB键将列出所有相匹配的内容(如果有的话)以供用户选择。 首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中―系统管理员‖拥有最高权限。 在启动Linux后屏幕出现如下界面显示:Red Hat Linux release 9 (Shrike) Kernel 2.4.20.8 on an i686

login: 输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个―#‖提示符时,表明你登录成功! 屏幕显示Linux提示符:[root@localhost root]#_ 这里需要说明的是―Red Hat Linux release 9 (Shrike)‖表示当前使用的操作系统的名称及版本。―2.4.20.8‖表示Linux操作系统的核心版本编号。―i686‖表示该台电脑使用的CPU的等级。 下面我们来介绍常用基本命令 一,注销,关机,重启 注销系统的logout命令 1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: [root@localhost root]#logout

dos下修改IP地址的方法 netsh命令

强大的netsh网络配置命令,可以很方便的用DOS批处理命令来配置本机ip,简单介绍如下: 方法1(简单易操作)、 1、通过netsh -c interface ip dump >c:\ip.txt的方式可以导出本机配置脚本(用来获得各网卡的配置信息,获得初始的配置模板); 2、然后修改配置脚本里的IP修改为需要的IP配置;(可分别留若干个配置文件) 3、然后再netsh -f c:\ip.txt的方式又可以把导出的配置脚本再导回去,实现快速切换IP的目的 方法2(需要了解命令格式)、 示例1将“本地连接”的ip换成192.168.0.107 Netsh int ip set address name="本地连接" source=static addr=192.168.0.107 mask=255.255.255.0 set address name="本地连接" gateway=192.168.0.1 gwmetric=1 解释下 以上设置的addr是IP地址,mask是子网掩码,gateway是网关,gwmetric是默认网关的跃点数 以上实例1命令可以简化成一行dos命令 netsh interface ip set address "本地连接" static 192.168.0.107 255.255.255.0 192.168.0.1 1 示例2 将“本地连接”设为自动获取IP及自动获取DNS Netsh int ip set address name="本地连接" source=dhcp set dns name="本地连接" source=dhcp 以上命令可以简化成两行DOS命令 netsh interface ip set address name="本地连接" source=dhcp netsh interface ip set dns name="本地连接" source=dhcp 示例3 其他例子 Netsh int ip set dns "本地连接" static 192.168.0.1 primary //设置首选DNS为192.168.0.1 set dns "本地连接" static none //清除DNS列表 更多介绍参见下文:

看高手教你如何用命令行更改IP地址

看高手教你如何用命令行更改IP地址 在Windows中,如果你要设置IP地址,一般是进入“本地连接”->“属性”,手动设置要更改的IP地址。其实,在命令行同样可以设置IP地址。如果你的IP需要在几个IP中来回切换,可以使用 netsh 命令更改: 1.进入CMD命令行; 点击“开始”->“运行”,输入“cmd”,回车, 2.设置IP: 设置动态获取IP地址(DHCP) 设置固定IP 参数说明: https://www.360docs.net/doc/3c18834538.html,:网络连接名称,一般为“本地连接”。你可以在“控制面板”->“网络连接”中看到。 2.source:获取IP的途径。动态获取,则为dhcp,手动设置,则为static。 3.addr:要设置的IP地址。 4.mask:子网掩码。 5.gateway:网关地址。 6.gwmetric:网关跃点数,可以设置为整型数值,也可以设置为“自动”:auto。 3.设置DNS: 自动获取DNS

手动设置单个DNS 手动设置多个DNS 参数说明: https://www.360docs.net/doc/3c18834538.html,:网络连接名称,一般为“本地连接”。你可以在“控制面板”->“网络连接”中看到。 2.source:获取IP的途径。动态获取,则为dhcp,手动设置,则为static。 3.addr:要设置的IP地址。 4.register: 5.none: 禁用动态 DNS 注册。 6.primary: 只在主 DNS 后缀下注册。 7.both: 在主 DNS 后缀下注册,也在特定连接后缀下注册。 8.index:设置的DNS的顺序号。 4.编写设置IP/DNS的批处理文件: 知道了如何设置IP和DNS后,你可以自己编写一个BAT文件: 新建一个文本文档,将后缀改为“.bat”; 编辑“.bat”文件的内容为上面的设置命令。例如:

Linux命令大全完整版

Linux命令大全完整版 目录 目录..................................................................... I 1. linux系统管理命令.. (1) adduser (1) chfn(change finger information) (1) chsh(change shell) (1) date (2) exit (3) finger (4) free (5) fwhois (5) gitps(gnu interactive tools process status) (5) groupdel(group delete) (6) groupmod(group modify) (6) halt (7) id (7) kill (8) last (8) lastb (8) login (9) logname (9) logout (9) logrotate (9) newgrp (10) nice (10) procinfo(process information) (11) ps(process status) (11) pstree(process status tree) (14) reboot (15)

rlogin(remote login) (16) rsh(remote shell) (16) rwho (16) screen (17) shutdown (17) sliplogin (18) su(super user) (18) sudo (19) suspend (19) swatch(simple watcher) (20) tload (20) top (21) uname (21) useradd (22) userconf (22) userdel (23) usermod (23) vlock(virtual console lock) (24) w (24) who (25) whoami (25) whois (25) 2. linux系统设置命令 (27) alias (27) apmd(advanced power management BIOS daemon) (27) aumix(audio mixer) (27) bind (29) chkconfig(check config) (29) chroot(change root) (30)

ls、ll文件查看命令详释

# ls -al # ls -ialh # ll ls 命令用来查看用户有执行权限的任意目录中的文件列表,该命令有许多有趣的选项。例如: $ ls -liah * 22684 -rw-r--r-- 1 bluher users 952 Dec 28 18:43 .profile 19942 -rw-r--r-- 1 scalish users 30 Jan 3 20:00 test2.out 925 -rwxr-xr-x 1 scalish users 378 Sep 2 2002 test.sh 上面的列表显示 8 列: ?第 1 列指示文件的 inode,因为我们使用了 -i 选项。剩下的列通过 -l 选项来进行正常显示。 ?第 2 列显示文件类型和文件访问权限。 ?第3 列显示链接数,包括目录。 ?第 4 和第 5 列显示文件的所有者和组所有者。这里,所有者 "bluher" 属于组 "users"。 ?第 6 列显示文件大小(单位为所显示的单位,而不是默认的字节数,因为我们使用了 -h 选项。 ?第 7 列显示日期(它看起来像是三列),包括月、日和年,以及当天的时间。 ?第 8 列显示文件名。在选项列表中使用 -a 将使列表中包含隐藏文件(如 .profile)的列表。 处理文件 出于安全的原因,所有的文件都有所有权和保护。文件访问权限(或文件模式)包含之前提到的相同的 10 个字符: ?第一个字符指示文件类型。最常见的是-代表文件(file),d代表目录(directory),而l代表链接(link)。 ?接下来的 9 个字符是三种用户类别的访问权限:文件所有者(owner)(字符 2-4),用户组(group) (5-7) 和其它(other) (8-10),其中 r 表示 读权限,w 表示写权限,x 指示一个文件上的执行权限。破折号-如果 出现在这九个位置的任意一个,则指示这个操作对该类别的用户禁止。 可以使用 chmod 命令通过字符符号或二进制掩码来设置访问权限。要使用二进制掩码,必须将三个权限组的字符表示转换成二进制格式,然后转换成八进制格式:

netshwinsockreset命令的作用

netsh winsock reset命令,作用是重置Winsock 目录。如果一台机器上的Winsock 协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。这个命令可以重新初始化网络环境,以解决由于软件冲突、病毒原因造成的参数错误问题。netsh是一个能够通过命令行操作几乎所有网络相关设置的接口,比如设置IP,DNS,网卡,无线网络等,Winsock是系统内部目录,Winsock是Windows网络编程接口,winsock工作在应用层,它提供与底层传输协议无关的高层数据传输编程接口,reset是对Winsock的重置操作。当执行完winsock的命令重启计算机后,需要重新配置IP。编辑本段为Windows XP 重置Winsock要为Windows XP 重置Winsock,请按照下列步骤操作: 1.单击“开始”,运行中输入cmd。 2.然后输入命令netsh winsock reset。 3.重启计算机。编辑本段为Windows Vista 重置Winsock要为Windows Vista 重置Winsock,请按照下列步骤操作: 1.单击“开始”,在开始搜索框中键入cmd,右键单击“cmd.exe”,单击“以管理员身份运行”,然后按“继续”。 2.在命令提示符处键入netsh winsock reset,然后按Enter。 3.注意:如果该命令键入错误,则出现一条错误消息。重新键入该命令。当该命令成功完成时,出现一条确认消息,后跟一个新的命令提示符。然后转到步骤3。 4.键入exit,然后按Enter。编辑本段用户确定Winsock2 项是否损坏的手动步骤要确定上述症状是否由Winsock2 项的问题引起,请使用下列方法之一。方法1:使用Netdiag 工具要使用Netdiag 工具,必须安装Microsoft Windows XP 支持工具。为此,请按照下列步骤操作。注意:1.如果您已经安装了支持工具,请转到本部分的第二个过程。 2.如果您尚未安装支持工具,且没有Windows XP 安装CD,请转到“方法2”。 1. 插入Windows XP 安装CD,然后找到Support\Tools 文件夹。 2. 双击“Setup.exe”文件。 3. 按照屏幕上的步骤操作,直至出现“请选择安装类型”屏幕。 4. 在“请选择安装类型”屏幕上,单击“完全”,然后单击“下一步”。完成安装后,请按照下列步骤操作: 1. 单击“开始”,单击“运行”,键入Command,然后单击“确定”。 2. 键入netdiag /test:winsock,然后按Enter。 Netdiag 工具将返回对若干网络组件(包括Winsock)的测试结果。有关测试的详细信息,请在netdiag 命令的末尾添加/v:netdiag /test:winsock /v 注:Netdiag命令行是提供给Windows XP用户来确定Winsock2项是否损坏的,并且是需要Windows XP安装盘来安装的。方法2:使用Msinfo32 程序注意: 只有在您没有Windows XP 安装CD 且未安装支持工具时,才应使用此方法。 1. 单击“开始”,单击“运行”,键入“Msinfo32.exe”,然后单击“确定”。 2. 依次展开“组件”和“网络”,然后单击“协议”。3. “协议”下将显示10 个节。如果Winsock2 项未损坏,则节标题中将包括下列名称: MSAFD Tcpip [TCP/IP] MSAFD Tcpip [UDP/IP] RSVP UDP Service Provider RSVP TCP Service Provider MSAFD NetBIOS [\Device\NetBT_Tcpip... MSAFD NetBIOS [\Device\NetBT_Tcpip... MSAFD NetBIOS [\Device\NetBT_Tcpip... MSAFD NetBIOS [\Device\NetBT_Tcpip... MSAFD NetBIOS [\Device\NetBT_Tcpip... MSAFD NetBIOS [\Device\NetBT_Tcpip... 如果显示的名称与此列表中的名称有任何不同,则说明Winsock2 项已损坏,或安装了第三方加载项(如代理软件)。如果msinfo32.exe无法获得系统信息,可能是由于以下三个服务没有启动:? 事件日志? Windows Management Instrumentation ? 远程过程调用 (RPC) 如果安装了第三方加载项,则该加载项的名称将替代列表中的字母“MSAFD”。如果列表中的节数多于10 个,则说明安装了第三方加载项。如果少于10 个,则说明缺少信息。注意:这些条目表示Windows XP

netsh命令改IP和重置winsock

netsh命令改IP和重置winsock C:\>;netsh netsh>;? 下列指令有效: 此上下文中的命令: .. - 移到上一层上下文级。 ? - 显示命令列表。 aaaa - 更改到 `aaaa' 上下文。 abort - 丢弃在脱机模式下所做的更改。 add - 将一个配置项添加到项目列表中。 alias - 添加一个别名 bye - 退出程序。 commit - 提交在脱机模式中所做的更改。 delete - 在项目列表上删除一个配置项目。 dhcp - 更改到 `dhcp' 上下文。 dump - 显示一个配置脚本。 exec - 运行一个脚本文件。 exit - 退出程序。 help - 显示命令列表。 interface - 更改到 `interface' 上下文。 offline - 将当前模式设置成脱机。 online - 将当前模式设置成联机。 popd - 从堆栈上打开一个上下文。 pushd - 将当前上下文放推入堆栈。 quit - 退出程序。 ras - 更改到 `ras' 上下文。 routing - 更改到 `routing' 上下文。 set - 更新配置设置。 show - 显示信息 unalias - 删除一个别名。 wins - 更改到 `wins' 上下文。 下列的子上下文可用: routing interface ras dhcp wins aaaa 若需要命令的更多帮助信息,请键入命令, 后面跟 ?。

快速切换IP地址有绝招 zz 在工作过程中会遇到在不同的网段中进行网络调试的情况,经常需要将机器在几个不同的IP地址中 进行切换。在Win2000操作系统中改变IP地址较之Win98已经方便多了因为改完IP地址后不需要重启计 算机,但还要进入网络属性设置中进行操作。有没有再简便一点的方法呢,比如用鼠标双击一下快捷方 式就可以实现IP地址的切换? 答案是肯定的。在Win2000中用netsh命令就可以实现这个功能。首先进入命令行模式(在“开始→ 运行”中键入“cmd”即可进入命令行模式),在提示符下键入netsh即可进入netsh的界面。再键入 int ip进入接口IP的配置模式,键入dump则列出接口IP配置信息: C:\Documents and Settings\Administrator>;netsh netsh>; netsh>;int ip interface ip>;dump # ---------------------------------- # 接口 IP 配置 # ---------------------------------- pushd interface ip # ″本地连接″ 的接口IP 配置(注:以下显示视具体机器情况而定)netsh命令重置winsock——XP下可以,2K下未知:) Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\>netsh winsock reset Sucessfully reset the Winsock Catalog. You must restart the machine in order to complete the reset.

ls命令选项详解

ls命令选项详解 ls 命令可以说是Linux下最常用的命令之一。它有众多的选项,其中有很多是很有用的,你是否熟悉呢?下面列出了 ls 命令的绝大多数选项。 -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。 -c 输出文件的 i 节点的修改时间,并以此排序。 -d 将目录象文件一样显示,而不是显示其下的文件。 -e 输出时间的全部信息,而不是输出简略信息。 -f -U 对输出的文件不排序。 -g 无用。 -i 输出文件的 i 节点的索引信息。 -k 以 k 字节的形式表示文件的大小。 -l 列出文件的详细信息。 -m 横向输出文件名,并以“,”作分格符。 -n 用数字的 UID,GID 代替名称。 -o 显示文件的除组信息外的详细信息。 -p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通 文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套 接字(sockets)。 -q 用?代替不可输出的字符。 -r 对目录反向排序。 -s 在每个文件名后输出该文件的大小。 -t 以时间排序。 -u 以文件上次被访问的时间排序。 -x 按列输出,横向排序。 -A 显示除“.”和“..”外的所有文件。 -B 不输出以“~”结尾的备份文件。 -C 按列输出,纵向排序。 -G 输出文件的组的信息。 -L 列出链接文件名而不是链接到的文件。 -N 不限制文件长度。 -Q 把输出的文件名用双引号括起来。 -R 列出所有子目录下的文件。 -S 以文件大小排序。 -X 以文件的扩展名(最后一个 . 后的字符)排序。 -1 一行只输出一个文件。 --color=no 不显示彩色文件名 --help 在标准输出上显示帮助信息。

LINUX LS命令(LS命令模拟)

Linux-ls命令模拟 // //ls.c //wxd // //create by jneeyou on15/11/13 //Copyright(c)2015wxd.All rights reserved. // #include #include #include #include"ls_fileHandle.h" /**主函数**/ int main(int argc,char*argv[]) { int mask=0; bool ret=false; freopen(".err.dat","wb",stderr); if(!init()) { return-1; } mask=getCmdLineArgs(argc,argv); if(mask==-2)//--help命令 { getHelpMenu();//显示帮助 } else if(mask==ERROR) { printf("参数有误,输入\"./ls--help\"查看帮助\n"); } else//其他命令 { setMaskArray(mask); ret=getDirInfo(".",0); if(!ret)

{ printf("参数有误,输入\"./ls--help\"查看帮助\n"); } freeMem(); } system("rm-f.err.dat"); return0; } // //ls_fileHandle.h //wxd // //create by jneeyou on15/11/13 //Copyright(c)2015wxd.All rights reserved. // #ifndef__LS_FILE_HANDLE_H__ #define__LS_FILE_HANDLE_H__ //定义bool型 #if!defined(bool) #define bool char #define true1 #define false0 #endif #ifndef ERROR #define ERROR-1 #endif #if defined(__STDC__VERSION__)&&(__STDC__VERSION__>=199901L) //@desc宏函数,输出文件信息 #define printf_c(fontBgColor,fontColor,format,args...) printf("\033[fontBgColor;fontColorm format\033[0m",args) #else //@desc输出文件信息 //带颜色输出,可设置字体颜色和字体背景颜色

常用网络命令操作

实验一常用网络命令操作 (一)实验目的: 掌握PING/NET/NETSH路由跟踪命令等常用命令的使用方法, 从这些命令的响应来确定网络的状态和路径情况 (二)实验环境 PC机及互联网 (三)实验内容 1.ping命令的使用 ping命令的具体语法格式:ping目的地址[参数1][参数2] 主要参数有: a:解析主机地址 n:数据:发出数据包的个数,缺省为4 l:数值:所发出缓冲区大小 t:继续执行ping命令,直到用户按下CTRL+C键终止 https://www.360docs.net/doc/3c18834538.html,stat命令的使用 Netstat[-参数1][参数2] a:显示所有与该主机建立连接的端口信息 b:显示以太网的统计住处参数一般与S参数共同使用 n:以数字的格式显示地址和端口信息 s:显示每个协议的统计情况。 3.用VisualRouter跟踪路由信息,显示从源地址到目的地址 所经过的路由。

(四)实验结果分析: Ping命令: 我们使用ping命令ping百度的IP 202.108.22.5 使用-a参数来解析计算机NetBios名 使用-n 命令改变测试包的数量 使用-t 命令来一直执行ping命令直到键入CTRL+C

Netstat命令: 我们使用-a 命令来查看与我们主机机那里连接的端口信息 我们使用-e 命令显示以太网的统计住处该参数一般与S参数共同使用 我们使用-n 以数字的格式显示端口的地址信息:

我们使用-s显示每个协议的统计情况:

接下来我们使用VisualRouter来跟踪路由信息: 我们尝试着与193.168.110.52通信,并查看路由等信息 我们可以看见地区为:Luxumbourg 该IP属于德国卢森堡 网络为:Fondation RESTERA 防火墙信息:对ping命令不回应,对80端口的空请求不回应 还有一些数据包分析的信息。 从这张图中我还看到了路由的路径: 从 192.168.110.205->192.168.110.1->?->192.168.99.38->192.168.9 9.30->10.0.1.4->218.2.129.161->?->202.97.50.238->202.97.33.1 54->?->4.71.114.101->?->4.69.148.225->212.73.249.26->158.64. 16.189->193.168.110.52

Netsh命令建立虚拟WIFI无线网络全程

Netsh命令虚拟WIFI无线热点全教程 一、首先以要用管理员身份调出"命令提示符"开始-所有程序-附件-右键点击"命令提示符"选用"以管理员身份运行 (1)打开"命令提示符"(有些小白或许还不明白,如果是管理员身份打开的"命令提示符"左上角会显示(管理员:命令提示符))直接输入下面的命令项:netsh wlan set hostednetwork mode=allow如上图 (2)"命令提示符"输入:netsh wlan set hostednetwork ssid=您想要的无线网络的名称 key=您想要设置的密码.记住 key前有个空格

例如配置是:netsh wlan set hostednetwork ssid=jk key=12345678密码长度必须为8位或以上,如上图 (3)右点击桌面右下角的"网络"打开网络共享中心–>更改适配 器设置,你会发现多了一个Microsoft Virtual wlan Miniport Adapter,这个就是我们刚才虚拟出来的无线网络适配器(图下).关闭此窗口,再打开(同样的方法)右击你的本地连接,也就是你连入网络的有线网卡.选择属性,点击共享,勾选“允许其他网络用户通过此计算机的Internet连接还连接”选项,在下拉菜单中选择刚才建立的虚拟网网络.确定。

(4)在命令提示符中继续输入:netsh wlan start hostednetwork 这一步是开启刚才虚拟的无线网络,这样你的Wifi手机就可以链接到你刚才建的虚拟Wifi网络了但麻烦也就麻烦在这儿,每次你开机要想使用虚拟WIFI热点都要输入这步的命令.

Linux常用命令详解(配合示例说明,清晰易懂)

Linux常用命令详解 (常用、详细) BISTU 自动化学院 刷碗小工(frisen.imtm) 2010年11月 开源社区,造福大家,版权所有,翻录不究(初次接触Linux命令可能对以下说明有不少疑问,可待看完一遍后再回头细看) (配合Ctrl + F可快速查找你想了解的命令)

索引:(待完善) 文件说明:Linux命令很多,但最常用的80个左右 文档内容充实,用示例说明命令如何使用笔者力求语言简洁,清晰易懂 由于忙于其他事情,改进排版的工作只能搁置了 最后,望此文档能为大家Linux学习之路献微薄之力 一、路径: 执行命令前必须要考虑的一步是命令的路径,若是路径错误或是没有正确的指定,可能导致错误的执行或是找不到该命令。要知道设置的路径,可执行以下命令: 一般而言,本书的命令位于/bin、usr/bin、/sbin、/usr/sbin之中。若读者执行了命令却出现“command not find”或是“命令不存在”的字样,就必须要确定该命令的位置是否在命令的路径中,或是系统上根本没有安装该套件。 二、命令顺序: 若在shell内置的命令/bin以及/usr/bin之下都出现了命令pwd,那当我们执行该命令时,会执行哪一个?答案是第一优先执行shell内置的命令,再执行路径中的设置;因此若有相同名称的命令时,必须要注意顺序设置,或是直接输入完整路径。 三、参数(或称选项)顺序: 一般除了特殊情况,参数是没有顺序的。举例而言,输入“–a –v”与输入“–v –a”以及“–av”的执行效果是相同的。但若该参数后指定了要接的文件或特殊对象,如“–a cmd1 –v cmd2”,则不能任意改变选项顺序。 四、常用参数: 下面所列的是常见的参数(选项)意义: --help,-h 显示帮助信息 --version,-V 显示版本信息 -v 繁琐模式(显示命令完整的执行过程) -i 交谈模式(指定界面) -l 长列表输出格式 -q,-s 安静模式(不显示任何输出或错误信息) -R 递归模式(连同目录下所有文件和子目录一起处理) -z 压缩 五、命令的结合与定向: 命令中除了一般命令外,还有管道(或称途径)(|)与定向(>或>>)。 管道(途径)的用法: “命令一[选项]”| “命令二[选项]”,也就是将“命令一[选项]”的输出结果传到“命令二[选项]”,通过命令二的处理之后才输出到标准输出(屏幕)上。比如“ls /etc”会列出etc下的所有文件,若加上“| less”,也就是“ls /etc | less”,则会将“ls /etc”的结果通过less分页输出。 定向的用法: 将结果定向到命令的输出设备,一般不加文件名意为将结果输出到屏幕,若是在定向后加上文件名,则会将命令的执行结果输出到定向的文件,例如“ls > temp.txt”,就会将ls 的结果输出到文件temp.txt中。“>”与“>>”的差异在于前者是覆盖,而后者是附加。 六、命令中的命令: 许多命令在执行后,会进入该命令的操作模式,如fdisk、pine、top等,进入后我们必须要使用该命令中的命令,才能正确执行;而一般要退出该命令,可以输入exit、q、quit或是按【Ctrl+C】组合

ls -l命令详解

有几个字段老是记不住,就记载这里吧 ls -l 列表信息详解 我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思 以笔者电脑的/root目录为例: [root@gucuiwen root]# ll 总用量 4055 -rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg drwxr-xr-x 2 root root 208 12月 1 13:50 babylinux -rw-r--r-- 1 root root 1474560 11月 25 15:02 babylinux.img -rw-r--r-- 1 root root 26829 11月 25 15:10 babylinux.png lrwxrwxrwx 1 root root 9 1月 4 11:06 disk1.link.png -> disk1.png -rw-r--r-- 1 root root 3209 11月 26 12:07 disk1.png -rw-r--r-- 1 root root 692 11月 26 13:16 disk2.png -rw-r--r-- 1 root root 718 11月 26 13:30 disk3.png drwx------ 8 root root 392 1月 4 08:40 evolution -rwxr-xr-x 1 root root 13695 11月 30 16:51 fangkuai.sh drwxr-xr-x 2 root root 208 12月 28 12:06 FreeBSD -rw-r--r-- 1 root root 2315 11月 25 17:19 getMBR.png brw-r----- 1 root root 3, 1 1月 4 11:06 hda1 drwxr-xr-x 2 root root 296 12月 31 11:53 htmls -rw-r--r-- 1 root root 21369 11月 24 18:12 install.log -rw-r--r-- 1 root root 3024 11月 24 18:12 install.log.syslog -rw-r--r-- 1 root root 293 1月 4 10:51 ls.txt -rw-r--r-- 1 root root 2237702 11月 25 15:09 magick.miff -rw-r--r-- 1 root root 13493 11月 25 17:31 mbr1.png -rw-r--r-- 1 root root 8123 11月 25 17:42 mbr2.png -rw-r--r-- 1 root root 512 11月 30 16:10 mbr.dat -rw-r--r-- 1 root root 64512 11月 26 15:33 partition.doc -rw-r--r-- 1 root root 49887 11月 26 15:32 partition.sxw -rw-r--r-- 1 root root 1541 12月 18 13:14 passwd -rw-r--r-- 1 root root 46320 11月 25 17:28 Screenshot-1.png -rw-r--r-- 1 root root 44145 11月 25 17:32 Screenshot-2.png -rw-r--r-- 1 root root 43732 11月 25 17:13 Screenshot.png drwxr-xr-x 3 root root 72 1月 4 10:49 test -rw-r--r-- 1 root root 0 12月 18 10:44 tset crw-r----- 1 root root 4, 65 1月 4 11:08 ttyS1

Linux系统命令及其使用详解

Linux 系统命令及其使用详解(大全) cat cd chmod chown cp cut 名称:cat 使用权限:所有使用者 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 说明:把档案串连接后传到基本输出(萤幕或加> fileName 到另一个档案) 参数: -n 或--number 由 1 开始对所有输出的行数编号 -b 或--number-nonblank 和-n 相似,只不过对于空白行不编号 -s 或--squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行 -v 或--show-nonprinting 范例: cat -n textfile1 > textfile2 把textfile1 的档案内容加上行号后输入textfile2 这个档案里cat -b textfile1 textfile2 >> textfile3 把textfile1 和textfile2 的档案内容加上行号(空白行不加)之后将内容附加到textfile3 名称:cd 使用权限:所有使用者 使用方式:cd [dirName] 说明:变换工作目录至dirName。其中dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory (也就是刚login 时所在的目录).另外,"~" 也表示为home directory 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录。 范例:跳到/usr/bin/: cd /usr/bin 跳到自己的home directory: cd ~ 跳到目前目录的上上两层: cd ../.. 指令名称:chmod 使用权限:所有使用者 使用方式:chmod [-cfvR] [--help] [--version] mode file... 说明:Linux/Unix 的档案存取权限分为三级:档案拥有者,群组,其他。利用chmod 可以藉以控制档案如何被他人所存取。 把计: mode:权限设定字串,格式如下:[ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者

相关文档
最新文档