Linux初级:文件管理
文件管理相关命令使用
linux文件系统上的文件类型如下:
-:表示普通文件
d:表示目录文件
b:表示块设备文件
c:表示字符设备文件
l:表示软链接文件
p:表示管道文件
s:表示套接字文件
【例1】查看文件类型
[[email protected] ~]# ll
total 4
drwxr-xr-x 2 root root 54 May 23 09:00 testdir
-rw-r--r-- 1 root root 39 May 22 05:33 test.txt
显示结果中,第一个位置的符号“-”就代表了文件类型为普通文件。
1、pwd命令:显示当前shell的工作目录
【例2】显示当前工作目录
[[email protected] network-scripts]#
[[email protected] network-scripts]# pwd
/etc/sysconfig/network-scripts
2、basename命令:取路径基名
【例3】获取/etc/sysconfig/的基名
[[email protected] sysconfig]# basename /etc/sysconfig/
sysconfig
3、dirname命令:取路径名
【例4】取/etc/sysconfig/的路径名
[[email protected] sysconfig]# dirname /etc/sysconfig/
/etc
4、cd命令:切换目录
【例5】切换到用户家目录
[[email protected] network-scripts]# cd
[[email protected] ~]#
或:
[[email protected] network-scripts]# cd ~
[[email protected] ~]#
【例6】切换到父目录
[[email protected] network-scripts]# cd ..
[[email protected]ntos7 sysconfig]#
【例7】切换到/etc/sysconfig目录下
[[email protected] ~]# cd /etc/sysconfig/
[[email protected] sysconfig]#
【例8】切换到上一次所在的目录
[[email protected] sysconfig]# cd -
/root
[[email protected] ~]#
5、ls命令:列出目录的内容
选项:
-a:包含隐藏文件;
-l:显示额外信息;
-R:目录递归通过;
-1:文件分行显示;
【例9】显示当前目录下所有文件
[[email protected] testdir]# ls -a
. .. up.txt dushan.txt win.txt
【例10】显示目录内容的额外信息
[[email protected] testdir]# ls -l
total 252
-rw-r--r-- 1 root root 0 May 23 09:00 up.txt
-rw-r--r-- 1 root root 251734 May 23 04:15 dushan.txt
-rw-r--r-- 1 root root 9 May 23 04:06 win.txt
或:
[[email protected] testdir]# ll
total 252
-rw-r--r-- 1 root root 0 May 23 09:00 up.txt
-rw-r--r-- 1 root root 251734 May 23 04:15 dushan.txt
-rw-r--r-- 1 root root 9 May 23 04:06 win.txt
【例11】递归显示目录内容
[[email protected] ~]# ls -R
.:
a b messaage.txt test test.txt
anaconda-ks.cfg fstab passwdtst testdir
./testdir:
UP.txt dushan.txt win.txt
【例12】组合应用
[[email protected] testdir]# ll -aR
.:
total 256
drwxr-xr-x 2 root root 54 May 23 09:00 .
dr-xr-x---. 10 root root 4096 May 28 07:07 ..
-rw-r--r-- 1 root root 0 May 23 09:00 up.txt
-rw-r--r-- 1 root root 251734 May 23 04:15 dushan.txt
-rw-r--r-- 1 root root 9 May 23 04:06 win.txt
6、stat命令:查看文件状态
【例13】查看initial-setup-ks.cfg文件的状态,注意三个时间戳
[[email protected] ~]#stat initial-setup-ks.cfg
File: ‘initial-setup-ks.cfg’
Size: 1728 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 100663381 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-08-07 09:28:22.746095173 +0800
Modify: 2018-07-18 17:31:57.877015401 +0800
Change: 2018-07-18 17:31:57.877015401 +0800
Birth: -
7、touch命令:创建空文件和刷新时间
【例14】创建空文件test.sh
[[email protected] ~]# touch test.sh
[[email protected] ~]# ll test.sh
-rw-r--r-- 1 root root 0 May 29 01:55 test.sh
8、cp命令:复制文件和目录
【例15】把/etc/httpd/conf/httpd.conf文件和/etc/my.cnf文件拷贝到当前目录
[[email protected] data]# cp /etc/httpd/conf/httpd.conf /etc/my.cnf ./
[[email protected] data]# ll
total 16
-rw-r--r-- 1 root root 11766 May 29 02:13 httpd.conf
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
【例16】把/etc/nginx目录及其下面所有文件和子目录拷贝到当前目录
[[email protected] data1# cp -R /etc/nginx/ ./
[[email protected] data]# ll
total 20
-rw-r--r-- 1 root root 11766 May 29 02:13 httpd.conf
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
drwxr-xr-x 4 root root 4096 May 29 02:16 nginx
【例17】复制httpd.conf文件并重命名为httpd.conf.bak
[[email protected] data]# cp httpd.conf httpd.conf.bak
[[email protected] data]# ll
total 32
-rw-r--r-- 1 root root 11766 May 29 02:13 httpd.conf
-rw-r--r-- 1 root root 11766 May 29 02:19 httpd.conf.bak
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
drwxr-xr-x 4 root root 4096 May 29 02:16 nginx
【例18】复制/etc目录下所有文件及其子目录到当前目录,并重命名为etc_bak
[[email protected] data]# cp -R /etc ./etc_bak
[[email protected] data]# ll
total 44
drwxr-xr-x 143 root root 8192 May 29 02:32 etc_bak
-rw-r--r-- 1 root root 11766 May 29 02:13 httpd.conf
-rw-r--r-- 1 root root 11766 May 29 02:19 httpd.conf.bak
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
drwxr-xr-x 4 root root 4096 May 29 02:16 nginx
9、mv命令:移动文件或目录
注意:移动目录时,无需添加-R递归选项,要与cp命令区别。
【例19】把当前目录下nginx命令重命名为nginx_bak
[[email protected] data]# mv nginx nginx_bak
[[email protected] data]# ll
total 44
drwxr-xr-x 143 root root 8192 May 29 02:32 etc_bak
-rw-r--r-- 1 root root 11766 May 29 02:13 httpd.conf
-rw-r--r-- 1 root root 11766 May 29 02:19 httpd.conf.bak
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
drwxr-xr-x 4 root root 4096 May 29 02:16 nginx_bak
【例20】把httpd.conf文件移动到/tmp目录下
[[email protected] data]# mv httpd.conf /tmp
[[email protected] data]# ll
total 32
drwxr-xr-x 143 root root 8192 May 29 02:32 etc_bak
-rw-r--r-- 1 root root 11766 May 29 02:19 httpd.conf.bak
-rw-r--r-- 1 root root 570 May 29 02:13 my.cnf
drwxr-xr-x 4 root root 4096 May 29 02:16 nginx_bak
10、rm命令:删除文件或目录
【例21】删除当前目录下所有文件
[[email protected] data]# rm -rf *
[[email protected] data]# ll
total 0
11、mkdir命令:创建目录
【例22】创建目录a,其下包含b和c两目录,且b和c目录下都有一个目录d
[[email protected] data ~]# mkdir -p a/{b,c}/d
12、tree命令:显示目录树
【例23】显示a目录的目录树
[[email protected] data ~]# tree a
a
├── b
│ └── d
└── c
└── d
4 directories, 0 files
【例24】查看/usr/local目录树,但仅查看2级的目录深度
[[email protected] ~]# tree -L 2 /usr/local
/usr/local
├── bin
├── etc
├── games
├── include
├── lib
├── lib64
├── libexec
├── sbin
├── share
│ ├── applications
│ ├── info
│ └── man
└── src
13 directories, 0 files
13、ln命令:创建链接文件
【例25】把 /usr/sbin/apachectl文件在当前目录下创建软连接文件为apachectl
[[email protected] data]# ln -s /usr/sbin/apachectl apachectl
[[email protected] data]# ll
total 0
lrwxrwxrwx 1 root root 19 JUN 29 02:57 apachectl -> /usr/sbin/apachectl
上一篇: linux常用命令-文件目录管理*
下一篇: Excle 报表导出得一点心得
推荐阅读
-
Data Guard环境下Temp表空间和Temp文件管理概述
-
[原创]php+ajax实现模拟Win文件管理系统十
-
[原创]php+ajax实现模拟Win文件管理系统
-
Linux服务器瞬间生成巨量session文件撑满硬盘,请问有什么办法解决?
-
Linux 服务管理两种方式service和systemctl
-
计算机管理打开报错提示widows找不到文件怎么办
-
linux 上php创建文件夹和文件
-
Linux系统下加载U盘设备时文件乱码的有效解决方法
-
Linux系统怎么复制文件夹下的全部文件到另外文件夹?
-
putty windows上传文件到linux服务器 & 从linux服务器 下载文件到 windows