文件处理命令

touch

名称:touch

所在路径:/bin/touch

执行权限:所有用户

语法:touch[文件名]

功能描述:创建空文件

[root@localhost tmp]# mkdir a
[root@localhost tmp]# touch /tmp/a/b.txt
[root@localhost tmp]# touch t.txt
[root@localhost tmp]# ls
a systemd-private-3a13c84be30540cf8c9aa032e5f76ba0-vmtoolsd.service-O4mYxW yum.log
jps.txt systemd-private-72347dcd610e454abc47df15e5885dce-vmtoolsd.service-rwgKA3
ks-script-YpfpfJ t.txt
#如果有空格则会创建两个文件,这种情况需要用双引号引起来,不过不推荐含有空格
#的文件名
[root@localhost tmp]# touch program files
[root@localhost tmp]# ls
a ks-script-YpfpfJ systemd-private-72347dcd610e454abc47df15e5885dce-vmtoolsd.service-rwgKA3
files program t.txt
jps.txt systemd-private-3a13c84be30540cf8c9aa032e5f76ba0-vmtoolsd.service-O4mYxW yum.log
[root@localhost tmp]#

cat

名称:cat

命令所在目录:/bin/cat

执行权限:所有用户

语法:cat[文件名]

功能描述:显示文件内容

-n显示行号

[root@localhost tmp]# cat /etc/issue
\S
Kernel \r on an \m [root@localhost tmp]# cat -n /etc/issue
1 \S
2 Kernel \r on an \m
3

tac

命令名称:tac

所在路径:/usr/bin/tac

执行权限:所有用户

语法:cat[文件名]

功能描述:显示文件内容(反向列式)


[root@localhost tmp]# tac /etc/issue Kernel \r on an \m
\S

more

命令名称:more

所在路径:/bin/more

执行权限;所有用户

语法:more[文件名]

(空格)或f 翻页

(Enter) 换行

q或Q 退出

功能描述:分页显示文件内容。

[root@localhost tmp]# more /etc/services
# /etc/services:
# $Id: services,v 1.55 2013/04/14 ovasik Exp $
#
#内容太多,执行上述语法可以执行相应操作

less

命令名称:less

所在路径:/bin/less

执行权限;所有用户

语法:less[文件名]

功能描述:分页显示文件内容。(可向上翻页)

不仅使用more的命令,还可以使用上下箭头换行,pageup和pagedown换页

,另外输入/可以进行查找,按n查找下一处。shift+n上一处

head

命令名称:head

所在路径:/usr/bin/lhead

执行权限;所有用户

语法:head[文件名]

功能描述:显示文件前几行。

-n 指定行数(默认前10行)

#查看前4行。
[root@localhost tmp]# head -4 /etc/services
# /etc/services:
# $Id: services,v 1.55 2013/04/14 ovasik Exp $
#
# Network services, Internet style

tail

命令名称:tail

所在路径:/usr/bin/lhead

执行权限;所有用户

语法:tail[文件名]

功能描述:显示文件后几行。

-n 指定行数(默认后10行)

-f 动态显示文件末尾内容(适合监控日志)

链接命令

ln

名称:ln

英文原义:link

命令所在路径:/bin/ln

执行权限:所有用户

语法:ln -s [原文件][目标文件]

-s 创建软链接(不加-s是硬链接)

功能描述:生成链接文件

软链接:

[root@localhost tmp]# ln -s /etc/issue /tmp/issue.soft
[root@localhost tmp]# ls -l /etc/issue
-rw-r--r--. 2 root root 23 11月 30 2016 /etc/issue
[root@localhost tmp]# ls -l /tmp/issue.soft
lrwxrwxrwx. 1 root root 10 8月 30 21:55 /tmp/issue.soft -> /etc/issue

lrwxrwxrwx(特点:l开头,3个rw)

上面的l就是软链接的意思,后面的读写权限,并不是原文件的权限,所有的软链接的权限都这样,其特征类似windows的快捷方式。

/tmp/issue.soft -> /etc/issue

同时可知,软链接指向原文件的路径。i结点和原文件不一致。

硬链接
[root@localhost tmp]# ls -l /tmp/issue.hard
-rw-r--r--. 2 root root 23 11月 30 2016 /tmp/issue.hard

硬链接特性

:拷贝命令cp -p+同步更新

如果原文件删除了,软链接找不到文件会报错,而硬链接没有影响。i结点和原文件一致。

权限命令

chmod

名称:chmod

英文原义:change the permissions mode of a file

命令所在路径:/bin/chmod

执行权限:所有用户

语法:chmod [{ugoa}{+-=}{rwx}][文件或目录]

[mode=421][文件或目录]

-R 递归修改

功能描述:改变文件或目录权限。

u所有者 g所属组 o其他人 a所有人。

+是加权限 -是减权限。

[root@localhost tmp]# chmod g=rwx a
[root@localhost tmp]# chmod g+w,o-r a
[root@localhost tmp]# chmod u+x a

以上仅供参考,一般用下面数字的方式添加权限。

r=4(读)

w=2(写)

x=1(执行)

加在一起7

rwx rw- r--

7 6 4

[root@localhost tmp]# chmod 777 a
[root@localhost tmp]# cd a
[root@localhost a]# ls -ld
drwxrwxrwx. 2 root root 19 8月 30 21:25 .
[root@localhost a]# cd ..
[root@localhost tmp]# chmod 111 a
[root@localhost tmp]# cd a
[root@localhost a]# ls -ld
d--x--x--x. 2 root root 19 8月 30 21:25 .\ [root@localhost a]# chmod 532 /tmp/a
[root@localhost a]#
下面是递归修改,改变目录及其下面所有文件。
[root@localhost tmp]# chmod -R 777 a
[root@localhost tmp]# cd a
[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 root root 0 8月 30 22:24 b.txt

以上只是练习一般没有532这种奇葩权限。。。

上述都是针对文件的解释,如果是操作文件夹才是的rwx的含义如下:

r:可以列出目录中的内容

w:可以在目录中创建,删除文件

x:可以进入目录

对于目录的权限比较的烧脑,比如:有r权限一定要x权限,因为都能看文件了当然是已经进入目录咯,其他情况类推。

权限管理命令

chown

名称:chown

英文原义:change file ownership

命令所在路径:/bin/chown

执行权限:所有用户

语法:chown[用户][文件或目录]

功能描述:改变文件或者目录的所有者

chown cxa feiq 改变文件feiq的所有者为cxa(前提存在cxa这个用户)


[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 root root 0 8月 30 22:24 b.txt
[root@localhost a]# chown cxa b.txt
[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 cxa root 0 8月 30 22:24 b.txt

chgrp

名称:chgrp

英文原义:change file group ownership

命令所在路径:/bin/chgrp

执行权限:所有用户

语法:chgrp[用户组][文件或目录]

功能描述:改变文件或者目录的所属组

[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 cxa root 0 8月 30 22:24 b.txt
[root@localhost a]# chgrp cxa b.txt
[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 cxa cxa 0 8月 30 22:24 b.txt
#使用groupadd添加一个组dj。
[root@localhost a]# groupadd dj
[root@localhost a]# chgrp dj b.txt
[root@localhost a]# ls -lh
总用量 0
-rwxrwxrwx. 1 cxa dj 0 8月 30 22:24 b.txt

umask

名称:umask

英文原义:the user file-creation mask

命令所在路径:shell内置命令

执行权限:所有用户

语法:umask[-S]

-S 以rwx形式显示新建文件缺省权限

功能描述:显示,设置文件的缺省权限


[root@localhost a]# umask -S
u=rwx,g=rx,o=rx
[root@localhost a]# mkdir lamp
[root@localhost a]# ls -ld lamp
drwxr-xr-x. 2 root root 6 8月 30 22:42 lamp
[root@localhost a]# touch r.txt
[root@localhost a]# ls -ld r.txt
-rw-r--r--. 1 root root 0 8月 30 22:42 r.txt

根目录下执行umask

[root@localhost /]# umask
0022
0 特殊权限(后面会提)
022 --- -w- -w-
777 rwxrwxrwx
022 --- -w- -w-
--------------------
755 rwxr-xr-x 目录(这个实际是上面的逻辑与(即相同的-)算出来的)
rw-r--r-- 文件

注意:缺省创建的文件是不能具有可执行权限的。

Linux学习笔记-文件处理和权限命令的更多相关文章

  1. Linux 学习笔记 文件权限

    * Linux系统会为各种各样的功能创建不同的用户账户,而这些账户并不是真的用户.这些账户称作系统账户,是系统上运行的各种服务进程访问资源用的特殊账户. 所有运行在后台的服务都需要用一个系统用户账户登 ...

  2. Linux学习笔记(八)权限管理命令

    权限管理命令 权限位含义 chmod chown chgrp umask默认权限 权限位含义 第1位代表文件类型 "-":普通文件 "b":块设备文件 &quo ...

  3. Linux学习笔记1_用户和权限

    自从我大微软终于放下身段,决定给开源社区一个迟来的拥抱,追随多年的拥趸们像是突然得到了女神的垂青,各种茫然失措.痛哭流涕.欢欣鼓舞,纷纷唱了起来:“等了好久终于等到今天,梦了好久终于把梦实现……”唱完 ...

  4. Linux 学习笔记 更多的bash shell命令

    一  监测程序 1.ps 输出运行在系统上的所有程序的许多信息 运行ps命令,也会开启一个进程 默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户的进程. Unix风格的参数(单破折号) - ...

  5. linux学习笔记(1) -- 关于命令的一些操作

    Linux 目录 /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录.所有的东西都是从这里开始.当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到ho ...

  6. Linux学习笔记(3)-常用命令

    江湖传言,Linux和Windows不同,他主要的用途是在一些服务器,或者片内系统上,所以人机交互界面自然就没有Windows那么漂亮,其实也没有那个必要. 所以,学习Linux的第一步,就是学习他那 ...

  7. linux学习笔记--文件

    文件系统 ls -lhi i inode 相当于文件在磁盘里的唯一标示,index node h 代表文件大小k,m [root@masters ~]# [root@masters ~]# ls -l ...

  8. linux学习笔记(二:权限)

    Linux下有两种用户: 超级用户(root).普通用户. 超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情,例如:rm -rf 只会删除自己的东西. 超级用 ...

  9. linux学习笔记-文件相关知识

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.文件属性 在当前用户家目录下以ls -al命令输出为例: -rw-r--r--     1          renren  ...

随机推荐

  1. BZOJ3270 博物馆(高斯消元+概率期望)

    将两个人各自所在点视为状态,新建一个图.到达某个终点的概率等于其期望次数.那么高斯消元即可. #include<iostream> #include<cstdio> #incl ...

  2. java的finally用法

    finally作为异常处理的一部分,它只能用在try/catch语句中,并且附带一个语句块,表示这段语句最终一定会被执行(不管有没有抛出异常),经常被用在需要释放资源的情况下. 之前在写爬虫的时候数据 ...

  3. 【刷题】BZOJ 2588 Spoj 10628. Count on a tree

    Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始 ...

  4. 【BZOJ4591】【Shoi2015】超能粒子炮

    Description 传送门 Solution ​ 记\(a=\lfloor\frac n p\rfloor\),\(b=n\%p\).我们尝试使用Lucas定理展开这些组合数,寻找公共部分.以下除 ...

  5. mybatis.5.动态SQL

    1.动态SQL,解决关联sql字符串的问题,mybatis的动态sql基于OGNL表达式 if语句,在DeptMapper.xml增加如下语句; <select id="selectB ...

  6. fzyzojP3412 -- [校内训练20171212]奇数

    套路地, 考虑dfs树上搞事情 容易发现,对于(x,y)如果dfs树上距离为奇数,或者dfs树上路径中有一条边在某个简单奇环上,那么可以经过奇数条边到达 判断边在某个奇环上: 点双,点双中黑白染色,如 ...

  7. Lnmp上安装Yaf学习(一)

    今天学习Lnmp上面如何安装Yaf流程 一.安装Lnmp 集成环境 访问路径:https://lnmp.org/install.html 这里我安装稳定版lnmp 1)   wget -c http: ...

  8. C++ 实现vector<std:string> 版本

    #include <iostream> #include <vector> #include <memory> #include <thread> #i ...

  9. mysql 优化总结

    1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. (laravel 可以使用 debugbar 包,可以及时发现低效 sql 语句,不使用索 ...

  10. Chapter12(动态内存)--C++Prime笔记

    1.分配再静态或栈内存中的对象由编译器自动创建销毁. 2.C++中动态内存的管理是通过 new:前者为对象非配空间并返回一个指向该对象的指针. delete:接受一个动态对象的指针,摧毁该对象,并释放 ...