Linux文件与目录管理命令

1.特殊目录

. 代表此层目录

.. 上一层目录

~ 代表目前用户身份所在的主文件夹

~vonzhou 代表vonzhou这个用户的主文件夹(vonzhou是个账户名称)

2.pwd(print working directory)显示目前所在目录

参数 :

-P(注意是大写字母)显示当前的路径而非连接(link)路径

[vonzhou@localhost ~]$ cd /var/mail

[vonzhou@localhost mail]$ pwd -P

/var/spool/mail

[vonzhou@localhost mail]$ ls -ld /var/mail

lrwxrwxrwx. 1 root root 10  3月 28 04:55 /var/mail -> spool/mail

3.mkdir创建新目录

参数:

-m:配置文件的权限,直接设置,不需要看默认权限(umask);

-p:将所需要的目录递归的创建起来。

vonzhou@localhost mail]$ mkdir test

mkdir: 无法创建目录"test": 权限不够

[vonzhou@localhost mail]$ su root

密码:

[root@localhost mail]# cd /tmp

[root@localhost tmp]# mkdir test

[root@localhost tmp]# mkdir test1/test2/test3

mkdir: 无法创建目录"test1/test2/test3": 没有那个文件或目录

[root@localhost tmp]# mkdir -p  test1/test2/test3

[root@localhost tmp]# ls -ld test

drwxr-xr-x. 2 root root 4096  3月 28 13:33 test

[root@localhost tmp]# mkdir -m 744 test

mkdir: 无法创建目录"test": 文件已存在

[root@localhost tmp]# rmdir test

[root@localhost tmp]# mkdir -m 744 test

[root@localhost tmp]# ls -ld test

drwxr--r--. 2 root root 4096  3月 28 13:35 test

4.rmdir(删除空的目录,注意)非空目录的删除用rm(移除文件或目录)

参数:

-i:互动模式,询问是否操作;

-r:递归删除,常用在目录的删除,非常危险!

-f:force,忽略不存在的文件,不会发出警告。

[root@localhost tmp]# cp -a  /etc/  .

[root@localhost tmp]# touch testing

[root@localhost tmp]# rm -i testing

rm:是否删除普通空文件 "testing"?y

[root@localhost tmp]# rmdir /tmp/etc

rmdir: 删除 "/tmp/etc" 失败: 目录非空

[root@localhost tmp]# rm -r /tmp/etc

rm:是否进入目录"/tmp/etc"? y

rm:是否删除普通文件 "/tmp/etc/netconfig"?y

rm:是否删除普通文件 "/tmp/etc/group-"?y

rm:是否删除普通文件 "/tmp/etc/asound.conf"?^C(注意:root身份下默认已经加入了-i参数,所一一直按y才会删除,按下ctrl+c终止rm的工作)

[root@localhost tmp]# \rm -r /tmp/etc(在命令前加反斜扛可以忽略掉alias)

[root@localhost tmp]# ls -ld  /tmp/etc

ls: 无法访问/tmp/etc: 没有那个文件或目录

5.mv(移动文件与目录,重命名)

参数:

-f:如果目标文件存在,不会询问直接覆盖;

-i:询问;

-u:新则覆盖(update)

[root@localhost tmp]# touch testing testing2

[root@localhost tmp]# mkdir mvtest

[root@localhost tmp]# mv testing mvtest

[root@localhost tmp]# mv mvtest mvtest2

[root@localhost tmp]# mv testing2 mvtest2

[root@localhost tmp]# ls -al mvtest2

总用量 8

drwxr-xr-x.  2 root root 4096  3月 28 13:55 .

drwxrwxrwt. 17 root root 4096  3月 28 13:55 ..

-rw-r--r--.  1 root root    0  3月 28 13:54 testing

-rw-r--r--.  1 root root    0  3月 28 13:55 testing2

6.退出root权限使用ctrl+D,中断正在执行的命令用ctrl+C。

7.

[root@localhost tmp]# echo $PATH

/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:

/home/vonzhou/bin

[root@localhost tmp]# su vonzhou

[vonzhou@localhost tmp]$ echo $PATH

/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:

/home/vnzhou/bin

为什么我得到的结果一样,vonzhou这个一般用户同样包含了sbin???

8.在实验mv命令的时候,因为将/bin/ls 移到了一个不存在的目录中,所以/bin/ls丢失了,很严重,解决方案是重装coreutils包:

rpm -e coreutils --nodeps

yum -y install coreutils

9.cp (复制文件或目录,很重要)

参数:

-a:相当于-pdr(常用)

-d:若源文件为连接文件,则复制连接文件属性而非文件本身

-i:若目标文件已存在,在询问是否覆盖

-l:创建硬连接文件

-s:创建符号连接文件(软连接)

-p:连同文件的属性一起复制,而非使用默认值(备份常用)

-r:递归持续复制,用于目录的复制(常用)

-u:新则覆盖(update)

[vonzhou@localhost tmp]$ cp /var/log/wtmp .

[vonzhou@localhost tmp]$ ls -l /var/log/wtmp wtmp

-rw-rw-r--. 1 root    utmp    4224  3月 28 13:29 /var/log/wtmp

-rw-rw-r--. 1 vonzhou vonzhou 4224  3月 28 14:13 wtmp

[vonzhou@localhost tmp]$ cp -a /var/log/wtmp wtmp2

[vonzhou@localhost tmp]$ ls -l /var/log/wtmp wtmp2

-rw-rw-r--. 1 root    utmp    4224  3月 28 13:29 /var/log/wtmp

-rw-rw-r--. 1 vonzhou vonzhou 4224  3月 28 13:29 wtmp2

[vonzhou@localhost tmp]$ su root

密码:

[root@localhost tmp]# cp -a /var/log/wtmp wtmp2

cp:是否覆盖"wtmp2"? y

[root@localhost tmp]# ls -a /var/log/wtmp wtmp2

/var/log/wtmp  wtmp2

[root@localhost tmp]# ls -l /var/log/wtmp wtmp2

-rw-rw-r--. 1 root utmp 4224  3月 28 13:29 /var/log/wtmp

-rw-rw-r--. 1 root utmp 4224  3月 28 13:29 wtmp2

[root@localhost tmp]# cp /root/.bashrc bashrc

[root@localhost tmp]# ls -l /tmp/bashrc

-rw-r--r--. 1 root root 176  3月 28 14:18 /tmp/bashrc

[root@localhost tmp]# cp -s bashrc bashrc_slink

[root@localhost tmp]# cp -l bashrc bashrc_hlink

[root@localhost tmp]# ls -l bashrc*

-rw-r--r--. 2 root root 176  3月 28 14:18 bashrc

-rw-r--r--. 2 root root 176  3月 28 14:18 bashrc_hlink

lrwxrwxrwx. 1 root root   6  3月 28 14:18 bashrc_slink -> bashrc

10.误把/etc目录(系统配置文件)删除了,结果centOS挂了,只得重装,所以尽量不要使用root身份操作,

这是教训。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值