linux基础常用之显示,创建,复制,移动,删除

第一个显示:相关命令ls,pwd

ls命令很强大,很常用,但也很难记

1-1,对于非内部命令(如lsrmmkdir等),无法使用help来查看帮助

1-2,ll = ls -l    //以长格式显示

[root@localhost ~]# ls

anaconda-ks.cfg  Desktop  install.log  install.log.syslog

[root@localhost ~]# ll

总计 56

-rw------- 1 root root  1009 02-10 21:03 anaconda-ks.cfg

drwxr-xr-x 2 root root  4096 02-10 21:35 Desktop

-rw-r--r-- 1 root root 32036 02-10 21:02 install.log

-rw-r--r-- 1 root root  3645 02-10 20:59 install.log.syslog

[root@localhost ~]#

1-3,ls的选项:

-d(显示目录)

-l(长格式显示)

-F(如果为文件夹,则有/标示)

-R(递归查看目录)

-A(显示除了该目录和上级目录之外这两个文件夹之外的所有文件,包括隐藏文件)

-a(显示所有文件,包括隐藏文件以及该目录和上级目录这两个文件夹)

-h(以容易读取的方式来显示该文件或者文件夹(如果显示文件夹,则需要和-d参数搭配用)的大小)

1-4,经典实例

[root@localhost data]# ll -hd      //hd搭配,长格式显示当前文件夹的属性

drwxr-xr-x 4 root root 4.0K 02-10 21:49 .

[root@localhost data]# ll        //仅长格式显示该目录下的内容,可以看到两个文件夹,下面ll                                                                          //-F更能显示为文件夹,后面有/标示

总计 20

drwx------ 2 root root 16384 02-11 04:45 lost+found

drwxr-xr-x 3 root root  4096 02-10 21:50 VMtools

[root@localhost data]# ll -F    //长格式查看该文件夹下的文档,若为文件夹,则右面后/标示,那么此文件夹                                                                                //下包含有两个文件夹

总计 20

drwx------ 2 root root 16384 02-11 04:45 lost+found/

drwxr-xr-x 3 root root  4096 02-10 21:50 VMtools/

[root@localhost data]# cd VMtools/        //进入到VMtools文件夹

[root@localhost VMtools]# ll            //不加-h和下面加了-h的区别,加粗字体。。。

总计 60668

-r-xr-xr-x 1 root root     1961 02-10 21:50 manifest.txt

-r--r--r-- 1 root root     1847 02-10 21:50 run_upgrader.sh

-r--r--r-- 1 root root 60638465 02-10 21:50 VMwareTools-9.6.1-1378637.tar.gz

drwxr-xr-x 7 root root     4096 10-18 09:26 vmware-tools-distrib

-r-xr-xr-x 1 root root   689456 02-10 21:50 vmware-tools-upgrader-32

-r-xr-xr-x 1 root root   702472 02-10 21:50 vmware-tools-upgrader-64

[root@localhost VMtools]# ll -h        //查看该文件夹下的文件大小,-h参数为易懂格式显示大小,加粗字体                                                                                                 //为区别

总计 60M

-r-xr-xr-x 1 root root 2.0K 02-10 21:50 manifest.txt

-r--r--r-- 1 root root 1.9K 02-10 21:50 run_upgrader.sh

-r--r--r-- 1 root root  58M 02-10 21:50 VMwareTools-9.6.1-1378637.tar.gz

drwxr-xr-x 7 root root 4.0K 10-18 09:26 vmware-tools-distrib

-r-xr-xr-x 1 root root 674K 02-10 21:50 vmware-tools-upgrader-32

-r-xr-xr-x 1 root root 687K 02-10 21:50 vmware-tools-upgrader-64

[root@localhost ~]# ls -R /boot/    //-R参数表示递归显示/boot目录

/boot/:

config-2.6.18-348.el5      lost+found                 vmlinuz-2.6.18-348.el5

grub                       symvers-2.6.18-348.el5.gz

initrd-2.6.18-348.el5.img  System.map-2.6.18-348.el5


/boot/grub:

device.map     grub.conf         minix_stage1_5     stage2

e2fs_stage1_5  iso9660_stage1_5  reiserfs_stage1_5  ufs2_stage1_5

fat_stage1_5   jfs_stage1_5      splash.xpm.gz      vstafs_stage1_5

ffs_stage1_5   menu.lst          stage1             xfs_stage1_5


/boot/lost+found:


2,pwd命令

单纯的显示目前所在的路径

[root@localhost network-scripts]# pwd

/etc/sysconfig/network-scripts

[root@localhost network-scripts]# cd ..

[root@localhost sysconfig]# pwd

/etc/sysconfig

[root@localhost sysconfig]#

第二个:创建之mkdir

用法:mkdir [选项] 目录...

若目录不存在则创建目录。


长选项必须用的参数在使用短选项时也是必须的。

-m, --mode=模式设定权限<模式> (类似 chmod),而不是rwxrwxrwx umask

-p, --parents 需要时创建上层目录,如目录早已存在则不当作错误

-v, --verbose 每次创建新目录都显示信息

--help 显示此帮助信息并退出

--version输出版本信息并退出

加上-p之后就不会提示什么错误了,不论你是重复简历了相同的目录还是你创建了目录下的两一个目录:

[root@localhost ~]# ls

anaconda-ks.cfg  Desktop  install.log  install.log.syslog

[root@localhost ~]# mkdir a

[root@localhost ~]# ls

a  anaconda-ks.cfg  Desktop  install.log  install.log.syslog

[root@localhost ~]# mkdir a

mkdir: 无法创建目录 “a”: 文件已存在

[root@localhost ~]# mkdir -p a

[root@localhost ~]# mkdir a/aa/aaa

mkdir: 无法创建目录 “a/aa/aaa”: 没有那个文件或目录

[root@localhost ~]# mkdir -p a/aa/aaa

[root@localhost ~]# ls

a  anaconda-ks.cfg  Desktop  install.log  install.log.syslog

[root@localhost ~]# ls -R

.:

a  anaconda-ks.cfg  Desktop  install.log  install.log.syslog


./a:

aa


./a/aa:

aaa


./a/aa/aaa:


./Desktop:

[root@localhost ~]#

第三个:创建链接文件之ln

1,不加参数的时候为创建硬链接,不可跨分区

[root@localhost ~]# ln /etc/passwd ./passwd        //在root家目录创建/etc/passwd的硬链接

ln: 正在创建指向“/etc/passwd”的硬链接“./passwd”: 文件已存在

[root@localhost ~]# ll

总计 60

drwxr-xr-x 3 root root  4096 02-12 00:08 a

-rw------- 1 root root  1009 02-10 21:03 anaconda-ks.cfg

drwxr-xr-x 3 root root  4096 02-12 00:25 Desktop

-rw-r--r-- 1 root root 32036 02-10 21:02 install.log

-rw-r--r-- 1 root root  3645 02-10 20:59 install.log.syslog

lrwxrwxrwx 1 root root    11 02-12 00:11 passwd -> /etc/passwd

[root@localhost ~]# ls

a  anaconda-ks.cfg  Desktop  install.log  install.log.syslog  passwd

[root@localhost ~]# cd /boot        //到boot目录下

[root@localhost boot]# ln /etc/passwd ./passwd        //在boot目录下创建/etc/passwd的硬链接,是不能被                                                    //创建的,我在分区的时候,挂在到/boot目录下的那个磁盘                                     //空间为独立划分出来的磁盘空间,硬链接无法跨设备连接,所以无法创建。

ln: 正在创建指向“/etc/passwd”的硬链接“./passwd”: 无效的跨设备连接

[root@localhost boot]# ln -s /etc/passwd ./passwd        //可以看到,ln -s创建的软连接是可以跨分区的

[root@localhost boot]# ll

总计 6333

-rw-r--r-- 1 root root   67857 2012-11-29 config-2.6.18-348.el5

drwxr-xr-x 2 root root    1024 02-10 21:03 grub

-rw------- 1 root root 2837626 02-10 21:54 initrd-2.6.18-348.el5.img

drwx------ 2 root root   12288 02-11 04:45 lost+found

lrwxrwxrwx 1 root root      11 02-12 12:44 passwd -> /etc/passwd

-rw-r--r-- 1 root root  118626 2012-11-29 symvers-2.6.18-348.el5.gz

-rw-r--r-- 1 root root 1282424 2012-11-29 System.map-2.6.18-348.el5

-rw-r--r-- 1 root root 2125660 2012-11-29 vmlinuz-2.6.18-348.el5

[root@localhost boot]#

2,-s参数表示创建一个快捷方式(软连接)

[root@localhost ~]# ln -s /etc/passwd passwd

[root@localhost ~]# ll

总计 60

drwxr-xr-x 3 root root  4096 02-12 00:08 a

-rw------- 1 root root  1009 02-10 21:03 anaconda-ks.cfg

drwxr-xr-x 2 root root  4096 02-10 21:35 Desktop

-rw-r--r-- 1 root root 32036 02-10 21:02 install.log

-rw-r--r-- 1 root root  3645 02-10 20:59 install.log.syslog

lrwxrwxrwx 1 root root    11 02-12 00:11 passwd -> /etc/passwd

[root@localhost ~]#

第四个:复制之cp

常用命令选项:

-i:当有相同文件存在时,提示是否覆盖

-r:递归复制整个目录(复制一个目录的时候需要加上r参数)

-f:强制覆盖,不提示(与-i相对)

-p:保持源文件的属性不变


注:在使用cp的时候,可以先查看一下alias命令,cp命令默认的为cp –i,也就是在使用cp过程中,实际上是用的cp –i,即在有覆盖的时间提醒,那么,现在如果想用cp –f取消提示,就必须先取消cp=cp –i;或者是加上一个转义符#\cp  –f  file1.txt  /host/test/

常用的命令有:

[root@localhost ~]# cp -r /boot/grub/ /etc/host.conf Desktop/     //将grub目录和host.conf文件复制到                                                                                          //Desktop目录

[root@localhost ~]# ls Desktop/

grub  host.conf

[root@localhost ~]# cp -rf /boot/grub/ /etc/host.conf Desktop/        //这时候不会提醒覆                                                        //盖,若不加f参数,将会一个一个提醒

[root@localhost ~]# ls -F Desktop/

grub/  host.conf

[root@localhost ~]

第五个:移动和重命名之mv

[root@localhost ~]# ls

a  anaconda-ks.cfg  Desktop  install.log  install.log.syslog  passwd

[root@localhost ~]# touch file1

[root@localhost ~]# mv file1 file2    //将file1的名字改为file2

[root@localhost ~]# ls

a  anaconda-ks.cfg  Desktop  file2  install.log  install.log.syslog  passwd

[root@localhost ~]# mv file2 Desktop/        //将file2移动到该目录下的Desktop目录下

[root@localhost ~]# ls Desktop/

file2  grub  host.conf

[root@localhost ~]#

第六个:删除之rm和rmdir

rm参数和cp参数相似,主要为r和f

-f为不提醒

-r为递归删除一个目录(加上-r才能删除目录)

[root@localhost Desktop]# rm -r grub/        //加-r参数,为递归删除一个目录

rm:是否进入目录 “grub/”?

[root@localhost Desktop]# rm grub/        //不加-r参数是无法删除目录的

rm: 无法删除目录“grub/”: 是一个目录

[root@localhost Desktop]# rm -r grub/

rm:是否进入目录 “grub/”?

//输入y一个一个删除,每一步都需要提示是否确认,这时加上-f参数取消提醒

[root@localhost Desktop]# rm -rf grub/        //-rf删除目录不带提醒的,强制递归删除

[root@localhost Desktop]# ls        //grub目录被删除了

file2  host.conf

[root@localhost Desktop]#

rmdir只能删除一个空的目录,所以不需要使用了,知道rm -rf就能删除任何目录了,但是很危险



简单的命令我会记住,但是参数我却常常忘记,以此小记!