一、了解Linux命令格式:

      命令       选项            参数

    # command     options...        arguments......


二、常见的命令类型:

    目录管理命令:

    ls,cd.pwd,mkdir.rmdir.tree


    文件管理:

    touch,stat,file,rm,cp,mv.nano


    日期时间:

    date ,clock, hwclock, cal

三、常用命令的解释以及示例:

list:ls

    列表,列出

示例:           (列出tmp下的所有文件)

[root@localhost ~]# ls /tmp

gconfd-root  ks-script-QR28xA      mapping-root  passwd

hello        ks-script-QR28xA.log  mn            vmware-root

[root@localhost ~]#


目录:文件夹,路径映射


路径:从指定起始点到目的地所经过位置


文件系统:file system


列出指定路径下的文件


目录:working directory ,current directory


pwd:printing wording directory (当前目录)

示例:

[root@localhost ~]# pwd   (显示当前目录)

/root




ls

- l:长格式

 文件类型:

   -:普通文件(f)

   d:目录文件

   b:块设备文件(block)

   c:字符设备文件(character)

   l:符号链接文件(symbolic link file)

   p:命令管道文件(pipe)

   s:套接字文件 (socket)

示例:

[root@localhost tmp]# ls -l(查看tmp目录下的文件类型)

total 60

drwx------ 2 root root 4096 May 26 06:15 gconfd-root

drwxr-xr-x 2 root root 4096 May 27 09:11 hello

-rwx------ 1 root root 1665 May 26 03:26 ks-script-QR28xA

-rw-r--r-- 1 root root   69 May 26 03:26 ks-script-QR28xA.log

srwxr-xr-x 1 root root    0 May 26 06:14 mapping-root

-rw-r--r-- 1 root root 1604 May 27 08:57 mn

-rw-r--r-- 1 root root 1604 May 27 08:57 passwd

drwx------ 3 root root 4096 May 26 03:29 vmware-root

[root@localhost tmp]#

   

  文件权限:9位,每3位一组,每一组:rwx(读,写,执行) ,r--

  文件硬链接的次数

  文件的属主(owner)

  文件的属组(group)

  文件的大小(size),单位是字节

  时间戳(timestamp):最近一次被修改的时间

       访问:access

       修改:modify  文件内容发生了改变

       改变:change,  matadata(元数据)


- h:做单位换算

- a:显示以.开头的隐藏文件

    . 表示当前文件目录

    .. 表示父目录

- A

- d:显示目录自身属性

- i:index node,inode 显示缩影

- r:逆序显示

- R:递归(recursive)显示


cd: change directory 切换当前目录

   家目录,主目录,home directory

示例:

[root@localhost ~]# cd /tmp(从root目录切换到tmp目录)

[root@localhost tmp]#


   cd ~uername:进入指定用户的家目录

   cd - :在当前目录和前一次所在的目录之间来回切换


命令类型:

    内置命令(shell内置),内部,内建

    外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件



环境变量:命名的内存空间

   变量赋值

      NAME=jerry


   PATH:使用冒号

   hash:缓存使用的路径

   clear:清屏

   printenv:显示环境


type:显示指定属于哪种类型



date:用于时间管理(系统时间)

Linux:  rtc:实时时钟

            硬件时钟:clock

            系统时间  

      ntp:网络时间协议

   hwclcck -w:将系统时间和硬件时间同步






获得命令的使用帮助:

内部命令:

     help COMMADND(命令)

外部命令:        

     COMMADN --help



命令手册:manual

  man MAMMAND

如何查看章节:

  whatis CAMMAND



名称及功能简要说明


MAN:

  NAME:命令名称及功能简要说明

  SYNOPSIS:用法说明,包括可用的选项

  DESCERPTION:命令功能的详尽说明,可能包括每一个选项的意义

  OPTIONS:说明每个选项的意义

  FILES:此类命令相关的配置

  BUGS、:

  EXAMPLES:使用示例

  SEE ALSO:另外参照


翻屏:

  向后翻一屏:空格

  向前翻一屏:b

  向后翻一行:回车

  向前翻一行:k


查找:

/keyword(关键字):向后

n:下一个

N:前一个

?keyword       :向后

n:下一个

N:前一个


q:退出


在线手册:

info COMMADN


文档:(命令)/usr/share/doc




file命令及其用法

windows:PE

Linux:ELF

[root@localhost tmp]# file /tmp

/tmp: sticky directory





文件系统

rootfa:根文件系统



FHS:文件系统存积标准  Linux



ls /boot:系统启动的相关文件,如内核、initrd,以及grub(bootloader)

ls /dev:设备文件

       设备文件

           块设备:随机访问,数据块

           字符设备:线性访问,按字符为单位

           设备号:主设备号()

ls /etc:配置文件

  /home:用户的家目录,没一个用户的家目录通常默认为/home/USERNAME

  /root:管理员的家目录

  /lib:库文件

       静态库, .a

       动态库, .dll, .so(shared object)

  /lib/modules:内核模块文件

  /media:挂载点目录,移动设备

  /mnt:挂载点目录,额外的临时文件系统

  /opt:可选目录,第三方程序的安装目录

  /proc:伪文件系统,内核映射文件

  /sys:伪文件系统,跟硬件设备相关的属性映射文件

  /tmp:临时文件  ,/var/tmp

  /var:可变化的文件

  /bin:可执行文件,用户命令

  /sbin:管理命令


 /usr:shared,read-only   只读文件


文件的命名规则:


1、长度不能超过255个字符

2、不能使用/当文件名

3、严格区分大小写



目录管理:

ls

cd

pwd



mkdir:创建目录(文件目录的最后一个节点)

 -p:副目录

 -v:verbose 详细信息

在mnt下创建test,在test下创建x,在x目录下创建m和y

mkdir -pv /mnt/test/x/m /mnt/test/y

mkdit -pv /mnt/test/{x/m,y}


命令行展开:


# tree:查看目录树


删除目录:rmdir(remove directory)

  只能用于删除空目录

[root@localhost ~]# rmdir /root/k(删除root目录下的k目录)

[root@localhost ~]# tree /root(显示root下的目录列表)

/root

|-- Desktop

|-- anaconda-ks.cfg

|-- install.log

`-- install.log.syslog


1 directory, 3 files

[root@localhost ~]# ls -l

total 60

-rw------- 1 root root   884 May 26 03:26 anaconda-ks.cfg

drwxr-xr-x 2 root root  4096 May 26 06:14 Desktop

-rw-r--r-- 1 root root 29540 May 26 03:26 install.log

-rw-r--r-- 1 root root  3886 May 26 03:24 install.log.syslog


文件的创建和删除

touch 修改时间

  -a

  -m

  -t

  -c

# stat 查看文件


创建文件,可以使用文件编辑器


ASCII:


nomo:创建文件

root@localhost ~]# man nano

[root@localhost ~]# nano hello                 (创建文件名为hello)

[root@localhost ~]# ls /hello

ls: /hello: No such file or directory

[root@localhost ~]# ls -l                      (查看文件)

total 76K

-rw------- 1 root root  884 May 26 03:26 anaconda-ks.cfg

drwxr-xr-x 2 root root 4.0K May 26 06:14 Desktop

-rw-r--r-- 1 root root   15 May 26 18:59 hello

-rw-r--r-- 1 root root  29K May 26 03:26 install.log

-rw-r--r-- 1 root root 3.8K May 26 03:24 install.log.syslog

drwxr-xr-x 2 root root 4.0K May 26 18:14 k

[root@localhost ~]# file hello

hello: ASCII text

[root@localhost ~]#




删除文件:rm

[root@localhost ~]# rm hello

rm: remove regular file `hello'? y(是否删除)

[root@localhost ~]#

     -f: 强行删除

     -r:  删除目录

   rm -rf / :删除根目录及目录下的所有文件

[root@localhost ~]# tree /mnt           (显示mnt下的所有目录)

/mnt

`-- tes2

   |-- a-b

   |-- a-c

   |-- d-b

   `-- d-c


5 directories, 0 files

[root@localhost ~]# rm -rf /mnt/tes2      (删除根目录下的所有文件)

[root@localhost ~]# tree /mnt

/mnt


0 directories, 0 files



复制和移动文件

cp:  copy

cp SRC DEST:指定源和目标的



[root@localhost ~]# cp /etc/passwd /tmp/    (复制etc目录下的passwd到tmp下)


[root@localhost ~]# cp /etc/passwd /tmp/test(复制etc目录下的passwd到tmp下并且重新命名为test)

[root@localhost ~]# ls /tmp

gconfd-root       ks-script-QR28xA.log  passwd  vmware-root

ks-script-QR28xA  mapping-root          test (tmp下回出现2个文件 一个是passwd和test)

[root@localhost ~]#


cp -r:递归复制一个目录包括子目录

[root@localhost ~]# cp -r /etc/init.d/ /tmp/hello  (复制etc目录下的init.d目录到tmp下并且重新命名为hello)

[root@localhost ~]# cd /tmp   (进入tmp目录下)

[root@localhost tmp]# ls -1     (查看tmp目录下的文件)

gconfd-root

hello

ks-script-QR28xA

ks-script-QR28xA.log

mapping-root

passwd

test

vmware-root



cp -p  :保留到属主

  -a  :保留文件的所有属性,归档复制 常用于备份

  -P  :保持连接

  -L  :链接指向的文件




mv:move

移动文件


mv SRC DEST



[root@localhost tmp]# mv test mn       (重新命名tmp下test为mn)

[root@localhost tmp]# ls               (在tmp目录下查看文件以及目录)

gconfd-root  ks-script-QR28xA      mapping-root  passwd

hello        ks-script-QR28xA.log  mn            vmware-root

[root@localhost tmp]#