Linux命令:文件和目录操作

Linux命令文件和目录操作

》文件是Linux用来存储信息的基本结构, 它是被命名(称为文件名)的存储在某种介质(如磁盘、光盘、磁带等)上的一组信息的集合。

》Linux系统文件以文件目录的方式来组织和管理系统中的所有文件。所谓文件目录就是将所有文件的说明信息采用树形结构组织起来,即常说的目录。

》整个文件系统有一个“根”(root),然后在根上分“杈”(directory),任何一个分杈上都可以在分杈,杈上也可以长出“叶子”。“根”和“杈”在Linux中被称为是“目录”或者“文件夹”,而“叶子”则是一个个的文件。

》Linux系统的文件系统的最外层就是 / 目录,其下主要目录有:binrootsbinhomebootetcmntlibvarusrdevprocsysrun等。

bin    dev   initrd.img  media  proc  sbin     sys  var

boot   etc   lib         mnt    root  selinux  tmp  vmlinuz

cdrom  home  lost+found  opt    run   srv      usr

 

 bin目录:存放所有程序可执行的位置.比如说:echo命令、cat命令、tail命令、dir命令、sed命令等。

root: root用户的根目录。

 boot:系统启动时的引导文件。

etc: Linux系统的配置文件信息、设置文件信息(passwd、shadow、group等)。

home:存放普通用户的文件信息。

lib:Linux系统安装时运行时存放的库。

sbit:Linux系统一些需要特别权限的系统命令可执行存放的目录。

mnt:Linux系统的加载点,管理挂上去磁盘、U盘的信息。

opt:Linux系统的一些选项存放的目录。

var: Linux系统一些可变的信息存放的目录,如日志。

usr: Linux系统用户软件安装的默认目录。

 

文件操作常用命令(1)

ls命令是英文单词list的简写,其功能是列出目录下的文件和子目录等相关信息。

  》ls [option] [file or directory]

    ls:列出所有文件

root@ubuntu:/# ls

bin    dev   initrd.img  media  proc  sbin     sys  var

boot   etc   lib         mnt    root  selinux  tmp  vmlinuz

cdrom  home  lost+found  opt    run   srv      usr

    ls –l :显示详细信息

root@ubuntu:/# ls -l

total 88

drwxr-xr-x   2 root root  4096 Feb  6 19:18 bin

drwxr-xr-x   3 root root  4096 Feb  6 19:20 boot

drwxr-xr-x   2 root root  4096 Feb  6 18:44 cdrom

drwxr-xr-x  15 root root  4220 Feb  6 22:29 dev

drwxr-xr-x 135 root root 12288 Feb  7 05:59 etc

drwxr-xr-x   3 root root  4096 Feb  6 19:17 home

lrwxrwxrwx   1 root root    36 Feb  6 19:18 initrd.img -> boot/initrd.img-3.2.0-23-generic-pae

drwxr-xr-x  21 root root  4096 Feb  6 19:18 lib

drwx------   2 root root 16384 Feb  6 18:41 lost+found

drwxr-xr-x   3 root root  4096 Apr 23  2012 media

drwxr-xr-x   3 root root  4096 Feb  6 19:20 mnt

drwxr-xr-x   2 root root  4096 Feb  6 11:20 opt

dr-xr-xr-x 197 root root     0 Feb  6 22:28 proc

drwx------   4 root root  4096 Feb  7 03:28 root

drwxr-xr-x  22 root root   900 Feb  7 01:54 run

drwxr-xr-x   2 root root  4096 Feb  6 19:20 sbin

drwxr-xr-x   2 root root  4096 Mar  5  2012 selinux

drwxr-xr-x   2 root root  4096 Apr 23  2012 srv

drwxr-xr-x  13 root root     0 Feb  6 22:28 sys

drwxrwxrwt  15 root root  4096 Feb  7 06:25 tmp

drwxr-xr-x  10 root root  4096 Apr 23  2012 usr

drwxr-xr-x  13 root root  4096 Feb  6 13:02 var

lrwxrwxrwx   1 root root    33 Feb  6 19:18 vmlinuz -> boot/vmlinuz-3.2.0-23-generic-pae

 

ll:等价于ls –l

root@ubuntu:/# ll

total 96

drwxr-xr-x  23 root root  4096 Feb  6 19:18 ./

drwxr-xr-x  23 root root  4096 Feb  6 19:18 ../

drwxr-xr-x   2 root root  4096 Feb  6 19:18 bin/

drwxr-xr-x   3 root root  4096 Feb  6 19:20 boot/

drwxr-xr-x   2 root root  4096 Feb  6 18:44 cdrom/

drwxr-xr-x  15 root root  4220 Feb  6 22:29 dev/

drwxr-xr-x 135 root root 12288 Feb  7 05:59 etc/

drwxr-xr-x   3 root root  4096 Feb  6 19:17 home/

lrwxrwxrwx   1 root root    36 Feb  6 19:18 initrd.img -> boot/initrd.img-3.2.0-23-generic-pae

drwxr-xr-x  21 root root  4096 Feb  6 19:18 lib/

drwx------   2 root root 16384 Feb  6 18:41 lost+found/

drwxr-xr-x   3 root root  4096 Apr 23  2012 media/

drwxr-xr-x   3 root root  4096 Feb  6 19:20 mnt/

drwxr-xr-x   2 root root  4096 Feb  6 11:20 opt/

dr-xr-xr-x 197 root root     0 Feb  6 22:28 proc/

drwx------   4 root root  4096 Feb  7 03:28 root/

drwxr-xr-x  22 root root   900 Feb  7 01:54 run/

drwxr-xr-x   2 root root  4096 Feb  6 19:20 sbin/

drwxr-xr-x   2 root root  4096 Mar  5  2012 selinux/

drwxr-xr-x   2 root root  4096 Apr 23  2012 srv/

drwxr-xr-x  13 root root     0 Feb  6 22:28 sys/

drwxrwxrwt  15 root root  4096 Feb  7 06:25 tmp/

drwxr-xr-x  10 root root  4096 Apr 23  2012 usr/

drwxr-xr-x  13 root root  4096 Feb  6 13:02 var/

lrwxrwxrwx   1 root root    33 Feb  6 19:18 vmlinuz -> boot/vmlinuz-3.2.0-23-generic-pae

    ls –a: 列出所有文件,包括隐藏文件(.点文件)

root@ubuntu:/# ls -a

.    boot   etc         lib         mnt   root  selinux  tmp  vmlinuz

..   cdrom  home        lost+found  opt   run   srv      usr

bin  dev    initrd.img  media       proc  sbin  sys      var 

 

  

cp命令可以将给出的文件或目录复制到另一文件或目录中去。

 

  》cp [option] [source] [destination]

  》cp –a:使拷贝的文件权限和修改目录日期不发生变化。

root@ubuntu:/# ls /home/weijunqiang/Documents/workspace

c  java  notes  ssh

root@ubuntu:/# mkdir /home/weijunqiang/Documents/workspace/temp

root@ubuntu:/# ls /home/weijunqiang/Documents/workspace

c  java  notes  ssh  temp

root@ubuntu:/# ls /home/weijunqiang/Documents/workspace/c

hello.cpp

root@ubuntu:/# cp -a /home/weijunqiang/Documents/workspace/c

 /home/weijunqiang/Documents/workspace/temp

root@ubuntu:/# ls /home/weijunqiang/Documents/workspace/temp

c

root@ubuntu:/# ls /home/weijunqiang/Documents/workspace/temp/c

hello.cpp

 

  》cp –r:可以拷贝整个目录。

root@ubuntu:/# ls /home/weijunqiang/Documents

java-ws  notes  workspace

root@ubuntu:/# mkdir /home/weijunqiang/Documents/cp_temp

root@ubuntu:/# ls /home/weijunqiang/Documents

cp_temp  java-ws  notes  workspace

root@ubuntu:/# cp -r /home/weijunqiang/Documents/workspace

 /home/weijunqiang/Documents/cp_temp

root@ubuntu:/# ls /home/weijunqiang/Documents/cp_temp

workspace

root@ubuntu:/# ls /home/weijunqiang/Documents/cp_temp/workspace

c  java  notes  ssh  temp

root@ubuntu:/# ls /home/weijunqiang/Documents/cp_temp/workspace/c

hello.cpp

root@ubuntu:/# cp -r /home/weijunqiang/Documents/workspace/java/

 /home/weijunqiang/Documents/cp_temp/

root@ubuntu:/# ls /home/weijunqiang/Documents/cp_temp/

java  workspace

 

  

文件操作常用命令()

》mv命令:可用于将文件或目录从一个位置移动到另一个位置。

   》mv [option] [source] [destination]

   》经常会用mv命令来对文件进行重命名。

rm命令提供删除文件功能,该命令可以删除目录中的一个或者多个文件或子目录

rm [option] [filename or directoryName]

rm命令的-r和-f选项经常被使用

选项

意义

-f

忽略不存在的文件,从不给出提示

-r

指示rm将参数中列出的全部目录和子目录均递归地删除

-i

进行交互式删除

mv命令-重命名文件夹

root@ubuntu:/# mv /home/weijunqiang/Documents/cp_temp/

 /home/weijunqiang/Documents/mv_cp_temp

root@ubuntu:/# ls /home/weijunqiang/Documents

java-ws  mv_cp_temp  notes  workspace

 

rm命令:删除文件

root@ubuntu:/# rm -r /home/weijunqiang/Documents/rm01/mv_cp_temp/workspace

root@ubuntu:/# ls /home/weijunqiang/Documents/rm01/mv_cp_temp/workspace

ls: cannot access /home/weijunqiang/Documents/rm01/mv_cp_temp/workspace: No such file or directory

root@ubuntu:/# ls /home/weijunqiang/Documents/rm01/mv_cp_temp/

java

 

目录操作常用命令(1)

mkdir命令用于创建目录

  》mkdir [option] [directoryName]

选项

意义

-m

对新建目录设置存取权限。

-p

可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。

-v

每次创建目录都显示信息

 

root@ubuntu:/home/weijunqiang/Documents# ls

java-ws  mv_cp_temp  notes  rm01  workspace

#创建多级目录并打印信息

root@ubuntu:/home/weijunqiang/Documents# mkdir -p -v mydirs/dir001/dir0001

mkdir: created directory `mydirs'

mkdir: created directory `mydirs/dir001'

mkdir: created directory `mydirs/dir001/dir0001'

 

 

root@ubuntu:/home/weijunqiang/Documents# ls

java-ws  mv_cp_temp  mydirs  notes  rm01  workspace

root@ubuntu:/home/weijunqiang/Documents# ls mydirs

dir001

root@ubuntu:/home/weijunqiang/Documents# ls mydirs/dir001

dir0001

root@ubuntu:/home/weijunqiang/Documents# ll

total 32

drwxr-xr-x  8 weijunqiang weijunqiang 4096 Feb  7 07:45 ./

drwxr-xr-x 24 weijunqiang weijunqiang 4096 Feb  7 03:09 ../

drwxrwxr-x  3 weijunqiang weijunqiang 4096 Feb  7 02:40 java-ws/

drwxr-xr-x  4 root        root        4096 Feb  7 07:14 mv_cp_temp/

drwxr-xr-x  3 root        root        4096 Feb  7 07:45 mydirs/

drwxrwxr-x  2 weijunqiang weijunqiang 4096 Feb  7 03:47 notes/

drwxr-xr-x  3 root        root        4096 Feb  7 07:30 rm01/

drwxr-xr-x  7 root        root        4096 Feb  7 07:05 workspace/

 

创建目录分配权限

root@ubuntu:/home/weijunqiang/Documents# mkdir -m 777 mydirs001

root@ubuntu:/home/weijunqiang/Documents# ll

total 36

drwxr-xr-x  9 weijunqiang weijunqiang 4096 Feb  7 07:48 ./

drwxr-xr-x 24 weijunqiang weijunqiang 4096 Feb  7 03:09 ../

drwxrwxr-x  3 weijunqiang weijunqiang 4096 Feb  7 02:40 java-ws/

drwxr-xr-x  4 root        root        4096 Feb  7 07:14 mv_cp_temp/

drwxr-xr-x  3 root        root        4096 Feb  7 07:45 mydirs/

drwxrwxrwx  2 root        root        4096 Feb  7 07:48 mydirs001/

drwxrwxr-x  2 weijunqiang weijunqiang 4096 Feb  7 03:47 notes/

drwxr-xr-x  3 root        root        4096 Feb  7 07:30 rm01/

drwxr-xr-x  7 root        root        4096 Feb  7 07:05 workspace/

 

》rmdir命令可以删除一个或者多个目录,在删除目录时,目录必须为空。

  》rmdir [option] [directoryName]

  》rmdir –p 递归删除目录

root@ubuntu:/home/weijunqiang/Documents# rmdir mydirs/dir001/dir0001

root@ubuntu:/home/weijunqiang/Documents# ls mydirs/dir001

补充:摘自网络

一个命令创建项目的目录结构

参考:http://www.ibm.com/developerworks/cn/aix/library/au-badunixhabits.html 

命令:

mkdir -vp scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}

输出:

[root@localhost test]# mkdir -vp scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}

mkdir: 已创建目录 “scf”

mkdir: 已创建目录 “scf/lib”

mkdir: 已创建目录 “scf/bin”

mkdir: 已创建目录 “scf/doc”

mkdir: 已创建目录 “scf/doc/info”

mkdir: 已创建目录 “scf/doc/product”

mkdir: 已创建目录 “scf/logs”

mkdir: 已创建目录 “scf/logs/info”

mkdir: 已创建目录 “scf/logs/product”

mkdir: 已创建目录 “scf/service”

mkdir: 已创建目录 “scf/service/deploy”

mkdir: 已创建目录 “scf/service/deploy/info”

mkdir: 已创建目录 “scf/service/deploy/product”

[root@localhost test]# tree scf/

scf/

|-- bin

|-- doc

|   |-- info

|   `-- product

|-- lib

|-- logs

|   |-- info

|   `-- product

`-- service

      `-- deploy

        |-- info

         `-- product

12 directories, 0 files

[root@localhost test]#

 

 

目录操作常用命令(2)

cd: 目录切换命令

》cd [directoryName]

命令

使用说明

cd

返回登录目录

cd  ~

同样是返登录目录

cd  /

返回系统根目录

cd  /root

返回到根用户或超级用户(在安装时创建的账号)的目录,但必须是根用户才能访问的该目录

Cd  /home

返回到home目录,home目录通常是为用户的登录目录的上级目录

cd  ..

向上移动一级目录

cd  -

返回上次访问的目录

 

root@ubuntu:~# cd /

root@ubuntu:/# cd ~

root@ubuntu:~# cd ..

root@ubuntu:/# cd -

/root

root@ubuntu:~# cd  /home

root@ubuntu:/home# cd -

/root

root@ubuntu:~# cd  /

root@ubuntu:/# cd /home/weijunqiang/Documents

root@ubuntu:/home/weijunqiang/Documents# cd -

/

root@ubuntu:/# cd /home/weijunqiang/Documents

root@ubuntu:/home/weijunqiang/Documents# cd ~

root@ubuntu:~# cd /home/weijunqiang/Documents

root@ubuntu:/home/weijunqiang/Documents# cd ..

root@ubuntu:/home/weijunqiang# cd /

root@ubuntu:/# cd ~

posted @ 2015-02-08 00:15  Ajunboys  阅读(279)  评论(0编辑  收藏  举报