1、在linux中一切皆是文件,只是类型不同,通过ls -l看到的一个字母表示文件的类型
-:普通文件。 d:目录文件。 l:链接文件。 b:块设备文件。 c:字符设备文件。 p:管道文件。
2、文件权限
文件的读、写、执行权限可以简写为 rwx,亦可分别用数字 4、2、1 来表示,文件所有者,所属组及其他用户权限之间无关联。
用例:假设一个脚本文件test.sh的权限需求是,所有者读写执行,组是读写,其他人是读,做如下设置
chmod 764 test.sh
3、创建目录,mkdir命令, 参数-p,递归创建不存在的目录: mkdir -p a/b/c/d/e
4、复制文件或目录,cp命令,主要参数(-R,-r表示递归)
-p 保留原始文件的属性 -d 若对象为“链接文件”,则保留该“链接文件”的属性 -R,-r 递归复制 -i 若目标文件存在则询问是否覆盖 -a 相当于-pdr(p、d、r为上述参数)
[root@bigdata-senior01 ~]# cp -a 1.txt 1.bak.txt
5、剪切和重命名,mv命令,剪切操作不同于复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。如果在同一个目录中对一个文件进行剪切操作,其实也就是对其进行重命名
6、删除文件和目录,rm命令,-r参数表示递归,删除目录的时候必须带着,-f参数表示强制删除,这个参数下,删除没有确认提示。
传说中的删库跑路~ [root@bigdata-senior01 ~]# rm -rf mybook3
7、dd命令,用于按照指定大小和个数的数据块来复制文件或转换文件
if 输入的文件名称 of 输出的文件名称 bs 设置每个“块”的大小 count 设置要复制“块”的个数
/dev/zero文件不会占用系统存储空间,但却可以提供无尽的数据,因此可以使用它作为 dd 命令的输入文件,来生成一个指定大小的文件。 生成一个10M大小的空文件,注意M必须大写。 [root@bigdata-senior01 ~]# dd if=/dev/zero of=mytest_10m_file count=1 bs=10M 记录了1+0 的读入 记录了1+0 的写出 10485760字节(10 MB)已复制,0.0437685 秒,240 MB/秒
制作CD的ISO镜像 dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso
8、file命令,用于查看文件的类型。
[root@bigdata-senior01 ~]# file mytest_10m_file mytest_10m_file: data [root@bigdata-senior01 ~]# file 1.txt 1.txt: UTF-8 Unicode text
[root@bigdata-senior01 ~]# file /dev/zero
/dev/zero: character special
[root@bigdata-senior01 ~]# file /dev/cdrom
/dev/cdrom: symbolic link to `sr0'
9、查找可执行文件
[es@bigdata-senior01 ~]$ ls -F|grep "*" checkHost.sh* checkHosts.sh* checkScores.sh* createHomeData.sh* createUsers.sh* outputNum.sh* testRandom.sh*
类似的,
使用ls -F|grep "/" 可以查找目录
使用ls -F|grep "@" 可以查找软连接
10、查看文件大小
#查看文件大小,并按大小排序
[es@bigdata-senior01 ~]$ ls -lhS 总用量 40K -rwxrw-r-- 1 es es 587 1月 9 17:04 createUsers.sh -rwxrw-r-- 1 es es 441 1月 10 14:23 testRandom.sh -rwxrw-r-- 1 es es 358 1月 9 17:26 checkHosts.sh -rwxrw-r-- 1 es es 338 1月 9 11:31 createHomeData.sh -rwxrw---x 1 es es 311 1月 9 14:25 checkScores.sh -rwxrw-r-- 1 es es 301 1月 10 11:13 outputNum.sh -rwxrw---x 1 es es 272 1月 9 12:04 checkHost.sh -rw-rw-r-- 1 es es 80 1月 9 17:12 hosts.txt drwxrwxr-x 2 es es 72 1月 9 11:28 data -rw-rw-r-- 1 es es 48 1月 9 17:03 userlist.txt -rw-rw-r-- 1 es es 40 1月 11 10:36 test.sh -rw-rw-r-- 1 es es 0 1月 10 14:13 num.txt
或者 [es@bigdata-senior01 ~]$ du -sh testRandom.sh 4.0K testRandom.sh
[es@bigdata-senior01 ~]$ ls -lh testRandom.sh -rwxrw-r-- 1 es es 441 1月 10 14:23 testRandom.sh
[es@bigdata-senior01 ~]$ du -h
12K ./data
76K .